《Python编程从入门到实践》day37

昨日知识点回顾

制定规范、创建虚拟环境并激活,正在虚拟环境创建项目、数据库和应用程序

今日知识点学习

18.2.4 定义模型Entry

复制代码
# models.py
from django.db import models

# Create your models here.
class Topic(models.Model):
    """用户学习的主题"""
    # 存储少量文本如名称、标题或城市,预留200字符空间
    text = models.CharField(max_length=200)
    # 记录日期和时间的数据,为True自动设置为当前日期和时间
    data_added = models.DateTimeField(auto_now_add=True)
    
class Entry(models.Model):
    """学到某个主题的具体知识"""
    topic = models.ForeignKey(Topic, on_delete=models.CASCADE)
    # 外键(foreign key)是一个数据库术语,它指向数据库另一条记录。
    # 次联删除:on_delete=models.CASCADE让Django在删除主题的同时删除所有与之相关联的条目
    text = models.TextField()
    date_added = models.DateTimeField(auto_now_add=True)
    
    class Meta:
        # 存储用于管理模型的额外信息
        verbose_name_plural = 'entries'

    def __str__(self):
        """返回模型的字符串表示"""
        # 只显示条目前50字符,省略号指出显示的并非整个条目
        return f"{self.text[:50]}..."

18.2.5 迁移模型Entry

18.2.6 向管理网站注册Entry

python 复制代码
# admin.py
from django.contrib import admin

# Register your models here.
# 向管理网站注册Topic
from .models import Topic,Entry

admin.site.register(Topic)
admin.site.register(Entry)
相关推荐
言之。18 小时前
Django流式响应
后端·python·django
qq_4308558818 小时前
线代第三章向量第一节:n维向量及其运算
python·决策树·机器学习
小鸡吃米…18 小时前
基于Python监督学习的人工智能:分类
人工智能·python·学习
一代明君Kevin学长18 小时前
RAG中的上下文压缩(Contextual Compression)
人工智能·python·深度学习·ai·大模型·检索增强·rag
老友@18 小时前
MySQL:从 ACID 到 MVCC 与主从复制
数据库·mysql·事务·mvcc·主从复制·acid·2pc
TG:@yunlaoda360 云老大18 小时前
华为云国际站代理商昇腾芯片硬适配的具体落地场景有哪些?
数据库·人工智能·华为云
010不二18 小时前
基于Appium爬虫文本导出可话个人动态(环境准备篇)
爬虫·python·appium
云老大TG:@yunlaoda36018 小时前
华为云国际站代理商的DDM的跨境部署调优是如何实现的?
开发语言·数据库·华为云·php
硅星企鹅18 小时前
如何使用低代码爬虫工具采集复杂网页数据?
爬虫·python·低代码
山沐与山18 小时前
【设计模式】Python观察者模式:用RabbitMQ+Celery实现事件驱动
python·观察者模式·设计模式·rabbitmq