Django auth组件拓展 关联外部信息---------------------------- Profile 模式

from django.db import models  
from django.contrib.auth.models import User  
GENDER_CHOICES = ( 
                                    (‘M‘, ‘男‘),  
                                    (‘F‘, ‘女‘),  
                                    )  
class UserProfile(models.Model):  
        # 这个字段是必须的,并且只能为user,且要添加外键关联到User  
        user = models.ForeignKey(User, unique=True, verbose_name=‘用户的额外信息‘)  
        # 以下可以按各自需求来定义  
        tel = models.CharField(‘电话‘, maxlength=20, blank=True, null=True)  
        mobile = models.CharField(‘移动电话‘, maxlength=20, blank=True, null=True)  
        address = models.CharField(‘家庭地址‘, maxlength=100, blank=True, null=True)  
        website = models.URLField(‘个人主页‘, blank=True, null=True)  
        birthday = models.DateField(‘出生日期‘, blank=True, null=True)  
        gender = models.CharField(‘性别‘, maxlength=1, choices=GENDER_CHOICES, radio_admin=True, default=‘M‘)  
        blog = models.URLField(‘个人主页‘, blank=True, null=True)  
        QQ = models.CharField(‘QQ‘, maxlength=50, blank=True, null=True)  
        MSN = models.CharField(maxlength=50, blank=True, null=True)  
        IM = models.CharField(maxlength=50, blank=True, null=True)  
        position = models.CharField(‘目前所在地‘, maxlength=200, blank=True, null=True)  
        country = models.CharField(‘目前所在国家‘, maxlength=50, blank=True, null=True, default=‘中国‘) 

3. 设置AUTH_PROFILE_MODULE

AUTH_PROFILE_MODULE = ‘users.UserProfile‘ #不区分大小写的
4. 添加INSTALLED_APPS

INSTALLED_APPS = (

...............
        ‘web.users‘,
)
5. 同步数据库

manage.py syncdb
只需使用User.get_profile()方法即可返回对应的UserPrfile对象实例了。
---------------------
原文:https://blog.csdn.net/Java2King/article/details/5333724

原文地址:https://www.cnblogs.com/Treasuremy/p/9885697.html

时间: 2024-10-11 07:20:55

Django auth组件拓展 关联外部信息---------------------------- Profile 模式的相关文章

Django Auth组件

Auth组件 Author组件是Django自带的认证系统,包括登录校验,用户信息数据库表,以及修改用户权限,用户注销.给用户增加sesion等一切认证功能 导入auth模块 from django.contrib import auth 用户信息 在django项目创建开时,运行python manage.py migrations 和 python manage.py mirate 两个命令后django会自动创建django本身需要的数据库表和你自定义创建的数据库表,而Auth组件中的au

django第13天(auth组件,forms组件)

django第13天(auth组件,forms组件) auth组件 -auth组件 -auth是什么? -django内置的用户认证系统,可以快速的实现,登录,注销,修改密码.... -怎么用? -(1)先创建超级用户: -python3 manage.py createsuperuser -输入用户名,邮箱(可以不输入),密码,敲回车,这样就创建出一个超级用户 -也就是在auth_user这个表中插入了一条数据(密码是加密的,所以我不能手动插入) -(2)验证用户: -from django.

Django重要组件(Auth模块)

Django重要组件(Auth模块) 一.auth模块介绍 Auth模块是Django自带的用户认证模块: 我们在开发一个网站的时候,无可避免的需要设计实现网站的用户系统.此时我们需要实现包括用户注册.用户登录.用户认证.注销.修改密码等功能,这还真是个麻烦的事情呢. Django作为一个完美主义者的终极框架,当然也会想到用户的这些痛点.它内置了强大的用户认证系统--auth,它默认使用 auth_user 表来存储用户数据. 二.auth模块常用方法 from django.contrib i

Django框架-Auth组件

Django自带的用户认证 我们在开发一个网站的时候,无可避免的需要设计实现网站的用户系统,此时我们需要实现包括用户注册,用户登录,用户认证,注销,修改密码等功能,这真是一个麻烦的事情. django作为一个完美主义者的终极框架,当然也会想到用户的这些疼点,因此它内置了强大的用户认证系统--auth,它默认使用auth_user表来存储用户数据. auth模块 auth本质就是一个django的app,里面也有views,models等. from django.contrib import a

Django auth 登陆后页面跳转至/account/profile,修改跳转至其他页面

这几天在学习django,django功能很强大,自带的auth,基本可以满足用户注册登陆登出,简单的用户注册登陆系统使用django auth足矣.当然也不是拿来就能用的,需要自己写登陆页面的模板,也很简单.自己尝试了一下,发现一个问题,当验证登陆成功后,页面会自动跳转到/account/profile,我并不想把页面跳转到这个页面,如何修改呢? 查了一堆网页,还是官网靠谱,很简单,就在project的setting里加一句话就Okay! LOGIN_REDIRECT_URL = ‘/inde

Django forms组件【对form舒心l了】

目录 Django forms组件 bound and unbound form instance forms渲染有关 隐藏一个字段,不渲染它 form 校验 form类 ModelForm 利用ModelForm关键就在于model's field mapping to form's field ModelForm.save() 详解 class Meta !!!重写覆盖默认的modelField字段(即自定义一些modelform属性) form有关多选择Field的使用 form's fi

Android ORMLite ForeignCollection关联外部集合

?? <Android ORMLite ForeignCollection关联外部集合> Android ORMLite ForeignCollection关联外部集合的功能,适合层级比較深,数据模型互相渗透.交叉的数据结构或集合.尤其方便解决复杂数据模型.简单期间,我们临时以 班级 <-> 学生 这种数据模型为例加以说明.一个班级里面有若干学生(一对多,1<-n).反过来说,若干个学生集合到一个班级中(n->1). 在Android ORMLite中.这种结构模型能够

Django ==&gt; Form 组件

Django ==> Form 组件 目录: 1.基本使用 2.form中字段和插件 3.自定义验证规则 4.动态加载数据到form中 Action: 1.基本使用 django 中的Form组件有一下功能: 1.生成html标签 2.验证用户数据(显示错误信息) 3.html form 提交保留上次提交数据 4.初始化页面显示内容 要使用 form 类,首先需要创建这个类,方法如下: from django.forms import Form from django.forms import

Laravel 5.3 使用内置的 Auth 组件实现多用户认证功能

https://blog.csdn.net/kevinbai_cn/article/details/54341779 概述 在开发中,我们经常会遇到多种类型的用户的认证问题,比如后台的管理员和前台的普通用户.Laravel 5.3 内置的 Auth 组件已经能很好的满足这项需求,下面大概记录下使用方法. 另外,后台页面常常需要登录才能访问,为了完成类似的功能,大家一般都习惯创建新的中间件来实现.但是 Auth 组件已经存在类似的中间件,我们可以在已有的基础上进行完善,具体请看 后台认证 -> 登