def __str __ (self): #__unicode__ in version 2.7
SmallIntegerFIeld integer, stored in binary form
DateField (auto_now_add = True) Automation
PpsitiveSmallIntegerField () positive number
settings.py: TIME_ZONE = 'Asia / Shanghai' time zone
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
from django.db import models from django.contrib.auth.models import User # Create your models here. class UserProfile(models.Model): """用户信息表""" user = models.OneToOneField(User) name = models.CharField(max_length=64,verbose_name="姓名") role = models.ManyToManyField("Role",blank=True,null=True) def __str__(self): #__unicode__ return self.name class Role(models.Model): """角色表""" name = models.CharField(max_length=64,unique=True) menus = models.ManyToManyField("Menus",blank=True) def __str__(self): return self.name class CustomerInfo(models.Model): """客户信息表""" name = models.CharField(max_length=64,default=None) contact_type_choices = ((0,'qq'),(1,''), (2'Micro letterMobile ' )) contact_type = models.SmallIntegerField (= contact_type_choices choices, default = 0) Contact = models.CharField (= 64 MAX_LENGTH, UNIQUE = True) source_choices = ((0, ' QQ group ' ), ( . 1, ' 51CTO ' ), ( 2, ' Baidu promotion ' ), ( 3, ' know almost ' ), ( 4, ' referrals ' ), (5,'其它'), ) source = models.SmallIntegerField(choices=source_choices) referral_from = models.ForeignKey("self",blank=True,null=True,verbose_name="转介绍") consult_courses = models.ManyToManyField("Course",verbose_name="咨询课程") consult_content = models.TextField(verbose_name="咨询内容") status_choices = ((0,'No Registration'),(1,'已报名'),(2,'已退学')) status = models.SmallIntegerField(choices=status_choices) consultant = models.ForeignKey("UserProfile",verbose_name="课程顾问") date = models.DateField(auto_now_add=True) def __str__(self): return self.name class Student(models.Model): """学员表""" customer = models.ForeignKey("CustomerInfo") class_grades = models.ManyToManyField("ClassList") def __str__(self): return self.customer class CustomerFollowUp(models.Model): """客户跟踪记录表""" customer = models.ForeignKey("CustomerInfo") content = models.TextField(verbose_name="跟踪内容") user = models.ForeignKey("UserProfile",verbose_name="跟进人") status_choices = ((0, ' no recent enrollment plan ' ), ( 1, ' within one month of registration ' ), ( 2, ' within two weeks of registration ' ), ( 3, ' have signed ' ), ) Status = Models .SmallIntegerField (choices = status_choices) DATE = models.DateField (auto_now_add = True) DEF __str__ (Self): return self.content class Course, (models.Model): "" " Curriculum " "" name = models.CharField (verbose_name = ' Course Name ' , 64-max_length =, UNIQUE = True) . Price = models.PositiveSmallIntegerField () period = models.PositiveSmallIntegerField (verbose_name = " Course period (months) " , default = 5 ) outline = models.TextField (verbose_name = " outline " ) DEF __str__ (Self): return self.name class classList (models.Model): " "" class list "" " branch = models.ForeignKey("Branch") course = models.ForeignKey("Course") class_type_choices = ((0,'脱产'),(1,'周末'),(2,'网络班')) class_type = models.SmallIntegerField(choices=class_type_choices,default=0) semester = models.SmallIntegerField(verbose_name="学期") teachers = models.ManyToManyField("UserProfile",verbose_name="讲师") start_date = models.DateField("开班日期") graduate_date = models.DateField("毕业日期",blank=True,null=True) def __str__(self): return "%s(%s)期" %(self.course.name,self.semester) class Meta: unique_together = ('branch','class_type','course','semester') Class CourseRecord (models.Model): "" " school record " "" class_grade = models.ForeignKey ( " classList " , verbose_name = " class class " ) day_num = models.PositiveSmallIntegerField (verbose_name = " Course Session " ) Teacher = models.ForeignKey ( " the UserProfile " ) title = models.CharField ( " topics in this section " , MAX_LENGTH = 64 ) Content = models.TextField ( "This Section " ) has_homework = models.BooleanField("本节有作业",default=True) homework = models.TextField("作业需求",blank=True,null=True) date = models.DateTimeField(auto_now_add=True) def __str__(self): return "%s第(%s)节" %(self.class_grade,self.day_num) class Meta: unique_together = ('class_grade','day_num') class StudyRecord(models.Model): """学习记录表""" course_record = models.ForeignKey("CourseRecord") student = models.ForeignKey("Student") score_choices = ((100,"A+"), (90,"A"), (85,"B+"), (80,"B"), (75,"B-"), (70,"C+"), (60,"C"), (40,"C-"), (-50,"D"), (0,"N/A"), #not avaliable (-100,"COPY"), #not avaliable ) score Models.SmallIntegerField = (= score_choices choices, default = 0) show_choices = ((0, ' absence ' ), ( 1, ' checked in ' ), ( 2, ' late ' ), ( 3, ' leave early ' ), ) show_status = models.SmallIntegerField (choices = show_choices, default = 1 ) note = models.TextField ( " performance Remarks " , blank = True, null = True) DATE= models.DateTimeField(auto_now_add=True) def __str__(self): return "%s %s %s" %(self.course_record,self.student,self.score) class Branch(models.Model): """校区""" name = models.CharField(max_length=64,unique=True) addr = models.CharField(max_length=128,blank=True,null=True) def __str__(self): return self.name class Menus(models.Model): """动态菜单""" name = models.CharField(max_length=64) url_type_choices = ((0,'absolute'),(1,'dynamic')) url_type = models.SmallIntegerField(choices=url_type_choices,default=0) url_name = models.CharField(max_length=128) def __str__(self): return self.name class Meta: unique_together = ('name','url_name')