django实现密码非加密的注册(数据对象插入)
Posted phyger
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了django实现密码非加密的注册(数据对象插入)相关的知识,希望对你有一定的参考价值。
数据模型
from django.db import models class userinfo(models.Model): username = models.CharField(max_length=10,unique=True) password = models.CharField(max_length=50) def __str__(self): return self.username
视图
from django.shortcuts import render,render_to_response from django.http import HttpResponse from .models import * # Create your views here. def index(request): return render(request,\'index.html\') def register(request): return render(request,\'register.html\') def adduser(requset): uname = requset.POST[\'user\'] upwd = requset.POST[\'pwd\'] try: usr = userinfo() usr.username=uname usr.password=upwd usr.save() #userinfo.objects.get_or_create(username=uname,password=upwd) msg=\'user create success!\' all = userinfo.objects.all() return render(requset, \'info.html\', {\'msg\': msg, \'all\': all}) except Exception as e: #return render(requset,\'info.html\',{\'msg\':e,\'all\':all}) return HttpResponse({\'<html>数据重复了<a href="/"><h2>返回</h2></a></html>\'},e)
项目的url
from django.conf.urls import include, url from django.contrib import admin urlpatterns = [ url(r\'^admin/\', include(admin.site.urls)), url(r\'\',include(\'person.urls\')), ]
APP的url
from django.conf.urls import include, url from django.contrib import admin from . import views as vv urlpatterns = [ url(r\'^register/$\',vv.register), url(r\'^adduser/$\',vv.adduser), url(r\'\',vv.index), ]
index.html
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Index</title> </head> <body> <h1>Welcome</h1> <a href="/register/"><h2>注册</h2></a> </body> </html>
register.html
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Register</title> </head> <body> <form action="/adduser/" method="POST"> {% csrf_token %} 账号:<input type="text" name="user"><br> 密码:<input type="password" name="pwd"><br> <input type="submit" value="提交"> </form> </body> </html>
info.html
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Info</title> </head> <body> <h2>{{ msg }}</h2> <p>到目前为止所有的注册用户列表为:</p> <li> {% for i in all %} <ol>{{ i.username }}</ol> {% endfor %} </li> <a href="/">点击跳转</a> </body> </html>
index主页截图
register注册页截图
正确提交截图
错误提交截图
(比如用户重复),实现主要在视图中的adduser方法中,通过except Exception as e:return HttpResponse实现
以上是关于django实现密码非加密的注册(数据对象插入)的主要内容,如果未能解决你的问题,请参考以下文章
django实现密码加密的注册(数据对象插入)-结合forms表单实现表单验证
Django项目:CRM(客户关系管理系统)--45--37PerfectCRM实现King_admin添加用户时密码加密