《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)
相关推荐
weixin_459753945 分钟前
MySQL 中高效存储与查询时间数据的最佳实践
jvm·数据库·python
qq_392690665 分钟前
HTML函数能否用老旧主板BIOS限制功能_固件版本影响分析【汇总】
jvm·数据库·python
狐狐生风7 分钟前
LangGraph 重构个人知识库问答系统(稳定 + 可扩展版)
python·langchain·rag·langgraph·agentai
qq_3926906611 分钟前
Go语言如何做图片缩放_Go语言图片缩放裁剪教程【推荐】
jvm·数据库·python
IT北辰14 分钟前
一键整理试题库!用Python自动化处理Excel选择题
python·自动化·excel
m0_7364393015 分钟前
Golang怎么连接MySQL数据库_Golang MySQL连接教程【总结】
jvm·数据库·python
CLX050515 分钟前
c++怎么以独占模式打开文件_fsopen与_SH_DENYRW【详解】
jvm·数据库·python
老纪16 分钟前
如何处理SQL复杂业务关联删除_通过触发器实现级联清理
jvm·数据库·python
运气好好的23 分钟前
golang如何理解Go 1.23迭代器协议_golang 1.23迭代器协议详解
jvm·数据库·python
2401_8246976630 分钟前
Go语言如何用systemd_Go语言systemd服务管理教程【总结】
jvm·数据库·python