Django大概理解

*models:  设计一个模型,即在数据库中设计一个表,一个模型就是对应一个数据库中的表;models是一个类,类名就是表名,而类的属性就是表的字段。如下例子设计了两个表:

from django.db import models

class Reporter(models.Model):
    full_name = models.CharField(max_length=70)

    def __str__(self):
        return self.full_name

class Article(models.Model):
    pub_date = models.DateField()
    headline = models.CharField(max_length=200)
    content = models.TextField()
    reporter = models.ForeignKey(Reporter, on_delete=models.CASCADE)

    def __str__(self):
        return self.headline

例子说明:首先从django.db里面导入models模块,特别说明:所有的models,即每一个这里的类都继承自models.Model

设计好模型之后:之后需要运行Django命令行程序来自动创建数据库表,需要用到两个命令,一个是makemigrations,一个是migrate,第一个命令是为了所有可用的模型且不存在表的模型创建迁移;第二个命令就是运行迁移并在数据库中创建不存在的表。:自我理解>第一个命令就相当于‘编译’模型,第二个命令就是将编译好的迁移拿到数据库里面来创建表。

models创建好之后并且在数据库里面创建好表之后,就有了与数据库交互的API了。

*Views:视图负责逻辑业务,一般负责两件事,一是返回HTTPresponse页面返回的对象,二是返回错误页面–>404页面。通常视图通过检索数据,加载模板,并将数据填在模板上。

*Templates: