Django 注册新用户
转发文章:http://www.cnblogs.com/fnng/p/3744099.html
注意事项:
models.py
from __future__ import absolute_import, unicode_literals from django.db import models from wagtail.wagtailcore.models import Page from wagtail.wagtailcore.fields import RichTextField from wagtail.wagtailadmin.edit_handlers import FieldPanel class singin(models.Model): # 注意不是 singin(Page) ,因对语言不熟悉,费了好长时间才发现的问题所在 username = models.CharField(max_length=50,null=True) password = models.CharField(max_length=10,null=True) email = models.EmailField(default ="@",null= True)
view.py
from django.shortcuts import render from django.shortcuts import render from django import forms from django.shortcuts import render_to_response from django.http import HttpResponse,HttpResponseRedirect from django.template import RequestContext from register.models import singin from register.views import * class PersonForm(forms.ModelForm): username = forms.CharField(label='username:',max_length=20,required=True) password = forms.CharField(label='passwd:',widget=forms.PasswordInput(),required=True) email = forms.EmailField(label='email:') class Meta: model = singin fields = ('username','password','email') #定义表单模型 # Create your views here. def register(request): if request.method == "POST": form = PersonForm(request.POST) #关联前端表单数据和后台表单类 if form.is_valid(): username = form.cleaned_data['username'] password = form.cleaned_data['password'] email = form.cleaned_data['email'] Person = singin() Person.username = username Person.password = password Person.email = email Person.save() #返回注册成功页面 return render(request,'register/success.html') else: #Get 请求 form = PersonForm() #表单类实例化 #return render_to_response('register.html',{'form':form}) return render(request,'register.html',{'form':form})
admin.py #注册到管理界面
from django.contrib import admin from register import models admin.site.register(models.singin) # singin 是表名称