学习笔记项目
Django-管理网站
- 创建超级用户
超级用户具备所有权限
- $ python manage.py createsuperuser 根据提示,输入用户名和密码
Django 自动在管理网站添加了 User 和 Group 模型
对于 Topic 模型,仍需要手工创建,注册模型
from django.contrib import admin
from learning_logs.models import Topic
# Register your models here.
admin.site.register(Topic)
定义 Entry 模型
class Entry(models.Model):
"""学到的有关某个主题的具体知识"""
topic = models.ForeignKey(Topic, on_delete=models.CASCADE) # 使用了外键,引用了数据库中另外一条记录
text = models.TextField()
date_added = models.DateTimeField(auto_now_add=True)
class Meta:
"""Meta 存储用于管理模型的额外信息"""
verbose_name_plural = 'entries'
def __str__(self):
"""返回模型的字符串表示"""
return self.text[:50] + "..."
迁移 Entry 模型
# 因添加了一个新模型,需要再次修改(迁移)数据库
$ python manage.py makemigrations learning_logs
Migrations for 'learning_logs':
learning_logsmigrations 002_entry.py # 新的迁移文件 0002_entry.py,告诉 Django 如何修改数据库
- Create model Entry
启动一个Python解释器,并查询项目数据库中的数据
$ python manage.py shell
>>> from learning_logs.models import Topic
>>>Topic.objects.all()