You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

55 lines
2.1 KiB

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

from django.db import models
genders = [
('m', ''),
('f', '')
]
# 添加学生模型
class Student(models.Model):
name = models.CharField(max_length=50, verbose_name="姓名")
gender = models.CharField(max_length=10, choices=genders, default='m', verbose_name="性别")
birthday = models.DateField(verbose_name='生日')
email = models.EmailField(verbose_name="邮箱")
info = models.CharField(max_length=255, verbose_name='个人简介', help_text='一句话概括自己不超过250字')
grade = models.CharField(max_length=4, verbose_name='年级')
number = models.CharField(max_length=20, verbose_name='级内学号')
password = models.CharField(max_length=30, verbose_name='密码')
class Meta:
constraints = [
models.UniqueConstraint(fields=['grade', 'number'], name='student_id')
]
def get_id(self):
return "%s%s" % (self.grade, self.number)
def __str__(self):
return "%s (%s)" % (self.get_id(), self.name)
# 添加老师模型
class Teacher(models.Model):
name = models.CharField(max_length=50, verbose_name="姓名")
gender = models.CharField(max_length=10, choices=genders, default='m', verbose_name="性别")
birthday = models.DateField(verbose_name='生日')
email = models.EmailField(verbose_name='邮箱')
info = models.CharField(max_length=255, verbose_name='教师简介', help_text='不要超过250字')
department_no = models.CharField(max_length=3, verbose_name='院系号')
number = models.CharField(max_length=7, verbose_name='院内编号')
password = models.CharField(max_length=30, verbose_name='密码')
class Meta:
constraints = [
models.UniqueConstraint(fields=['department_no', 'number'], name='teacher_id')
]
# python manage.py makemigrations 生成空的databasedb.sqlite3
# python manage.py migrate 更新到数据库文件
def get_id(self):
return "%s%s" % (self.department_no, self.number)
def __str__(self):
return "%s (%s)" % (self.get_id(), self.name)