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 是表名称

 

posted on 2018-02-11 22:29  筱箃  阅读(219)  评论(0编辑  收藏  举报

导航