|
|
@@ -114,8 +114,76 @@
|
|
|
> path('leader/', views.leader, name='leader'), # 领导分工
|
|
|
> ]
|
|
|
> ```
|
|
|
- >
|
|
|
- >
|
|
|
+
|
|
|
+ 9. 数据模型配置
|
|
|
+
|
|
|
+ - 创建一个common模块,在models.py中定义数据模型
|
|
|
+
|
|
|
+ > 定义一个文章模型和轮播图模型
|
|
|
+
|
|
|
+ ```python
|
|
|
+ class Article(models.Model):
|
|
|
+ CATEGORY_CHOICES = [
|
|
|
+ ('professional', '专业介绍'),
|
|
|
+ ('leader', '领导分工'),
|
|
|
+ ('academic_leader', '学院学科建设带头人教师'),
|
|
|
+ ('computer_science', '计算机系教师'),
|
|
|
+ ('software_engineering', '软件工程系教师'),
|
|
|
+ ('digital_media', '数字媒体技术系教师'),
|
|
|
+ ('iot_networking', '物联网与网络工程系教师'),
|
|
|
+ ('math_teaching', '数学教研室教师'),
|
|
|
+ ('party_work', '党政学工队伍教师'),
|
|
|
+ ('scientific', '教学科研'),
|
|
|
+ ('party_dynamic', '党建动态'),
|
|
|
+ ('youth_dynamic', '团学动态'),
|
|
|
+ ('admissions', '招生'),
|
|
|
+ ('employment', '就业'),
|
|
|
+ ]
|
|
|
+ title = models.CharField(max_length=200, verbose_name='标题')
|
|
|
+ markdown_content = models.TextField(verbose_name='markdown内容')
|
|
|
+ #blank=True配置
|
|
|
+ html_content = models.TextField(verbose_name='html内容',blank=True)
|
|
|
+ created_at = models.DateTimeField(auto_now_add=True, verbose_name='创建时间')
|
|
|
+ updated_at = models.DateTimeField(auto_now=True, verbose_name='更新时间')
|
|
|
+ category = models.CharField(max_length=50, choices=CATEGORY_CHOICES, verbose_name='文章分类')
|
|
|
+ cover = models.URLField(verbose_name='封面')
|
|
|
+
|
|
|
+ class Meta:
|
|
|
+ ordering = ['-created_at']
|
|
|
+
|
|
|
+ def __str__(self):
|
|
|
+ return self.title
|
|
|
+
|
|
|
+
|
|
|
+ class Banner(models.Model):
|
|
|
+ title = models.CharField(max_length=200, verbose_name='标题')
|
|
|
+ url = models.URLField(verbose_name='链接')
|
|
|
+ order = models.IntegerField(default=0, verbose_name='序号')
|
|
|
+
|
|
|
+ class Meta:
|
|
|
+ ordering = ['order']
|
|
|
+
|
|
|
+ def __str__(self):
|
|
|
+ return self.title
|
|
|
+ ```
|
|
|
+
|
|
|
+ - 在admin中注册定义的模型,编译admin.py文件
|
|
|
+
|
|
|
+ ```python
|
|
|
+ from django.contrib import admin
|
|
|
+
|
|
|
+ from common.models import Article, Banner
|
|
|
+
|
|
|
+ # Register your models here.
|
|
|
+ admin.site.register(Article)
|
|
|
+ admin.site.register(Banner)
|
|
|
+ ```
|
|
|
+
|
|
|
+ > 更新模型信息:`python manage.py makemigrations common`
|
|
|
+ >
|
|
|
+ > 同步模型与数据表`python manage.py migrate common`
|
|
|
+ >
|
|
|
+ > 创建超级管理员用于登陆django的后台:`python manage.py createsuperuser `
|
|
|
|
|
|
### 工作内容分工
|
|
|
|