《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)
相关推荐
landyjzlai1 小时前
蓝迪哥玩转Ai(8)---端侧AI:RK3588 端侧大语言模型(LLM)开发实战指南
人工智能·python
S1998_1997111609•X2 小时前
论当今社会主义与人文关怀人格思想下的恶意仿生注入污染蜜罐描述进行函数值非法侵入爬虫的咼忄乂癿〇仺⺋.
数据库·网络协议·百度·ssh·开闭原则
我叫黑大帅3 小时前
如何通过 Python 实现招聘平台自动投递
后端·python·面试
其实防守也摸鱼3 小时前
CTF密码学综合教学指南--第九章
开发语言·网络·python·安全·网络安全·密码学·ctf
砚底藏山河3 小时前
Python量化开发:2026最佳实时股票数据API接口推荐与对比
开发语言·windows·python
倔强的石头_3 小时前
kingbase备份与恢复实战(六)—— 备份自动化与保留策略:Windows任务计划+日志追溯
数据库
研究点啥好呢4 小时前
专为求职者开发的“面馆”!!!摆脱面试焦虑!!!
python·面试·开源·reactjs·求职招聘·fastapi
轻刀快马4 小时前
别被 ORM 框架宠坏了:从一场“订单消失”悬案,看懂 MySQL 为什么要强推 InnoDB
数据库·mysql
DFT计算杂谈5 小时前
自动化脚本一键绘制三元化合物相图
java·运维·服务器·开发语言·前端·python·自动化
EW Frontier5 小时前
6G ISAC新范式:基于智能漏波天线的Wi‑Fi通感一体化系统设计与实测【附MATLAB+python代码】
开发语言·python·matlab·music·isac·doa·wi‑fi