app种类
- users:用户管理
- course:课程管理
- organization:机构和教师管理
- operation:用户操作管理
这里采用的是一种分层的设计理念,即operation app位于最上册,其余位于下层,这样可以防止循环引用导致程序死循环报错。
新建users app
创建app
进入Run manage.py Task,然后输入下面的命令:
startapp users
然后将新生成的app目录拖入apps中去。
users数据表
django提供有默认的auth_user表,它的字段含义如下:
- id:主键
- password:密码
- last_login:上次登陆时间
- is_superuser:是否为管理员
- username:用户名
- first_name、last_name:名和姓
- email:邮箱
- is_staff:在后台管理中用到
- is_active:是否为活动状态
- date_joined:注册日期
但是其中的字段不够,例如头像、性别等信息都是没有的,所以需要自定义users表
user表的自定义原则是:继承auth_user表的字段,并且加入自定义的字段。
在users app中的models.py文件中使用下面的代码自定义users的字段并继承自auth_user表:
from django.contrib.auth.models import AbstractUser
class UserProfile(AbstractUser):
下面是自定义的user表内容:
from __future__ import unicode_literals
from django.db import