【NB】创建模型

[复制链接]
查看554 | 回复0 | 2022-11-14 08:17:37 | 显示全部楼层 |阅读模式


现在,我们将定义模型 - 本质上数据库进行设计,使用其他元数据。
在我们的简单调查的应用程序,我们将创建两个模型:Question 和 Choice。Question有一个问题标题和发布日期。Choice有两个字段:选择文本和票数。每个选项都与一个问题关联。

这些概念由简单的Python类来表示。编辑 polls/models.py 文件,所以 polls/models.py 看起来是这样的:
from django.db import models

class Question(models.Model):
    question_text = models.CharField(max_length=200)
    pub_date = models.DateTimeField('date published')

class Choice(models.Model):
    question = models.ForeignKey(Question, on_delete=models.CASCADE)
    choice_text = models.CharField(max_length=200)
    votes = models.IntegerField(default=0)
该代码是直接的。每个模型是django.db.models.Model类的子类。 每个模型具有许多类变量,每一个在模型变量与数据库表的字段关联。

每个字段由 Field 类实例表示 – 例如,CharField表示字符型字段,DateTimeField表示日期时间字段。这告诉Django 每个字段保存的数据类型。

每个Field实例(例如,question_text或pub_date)的名称是字段的名称,这是机器友好的格式。在Python代码中使用这个值,数据库将使用它作为列名。

字段也可以有不同的可选参数;在本示例中,我们已经将票数的默认值设置为0。
最后,需要注意的是关系的定义,这里使用了外键。这告诉 Django 每个选项关联一个问题。 Django支持所有常见的数据库关系:多对一,多对多以及一对之一。
aaaa
村长黑科技是专业提供项目资源的服务的村长黑科技平台,如合购网赚项目、引流推广软件、软件程序开发等项目就选村长黑科技平台,参与或发布项目定制各种软件就来村长黑科技平台
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则