Django初学者笔记系列(二)
1.创建应用程序
Django项目 由一系列应用程序组成,它们协同工作,让项目成为一个整体。我们暂时只创建一个应用程序,它将完成项目的大部分工作
当前,在前面打开的终端窗口中应该还运行着runserver 。请再打开一个终端窗口(或标签页),并切换到manage.py所在的目录。激活该虚拟环境,再执行命令startapp
learning_log$ source ll_env/bin/activate
(ll_env)learning_log$ python manage.py startapp learning_logs
(ll_env)learning_log$ ls
db.sqlite3 learning_log learning_logs ll_env manage.py (ll_env)learning_log$ ls learning_logs/
admin.py init.py migrations models.py tests.py views.py
我们将使用models.py来定义我们要在应用程序中管理的数据
。admin.py和views.py将在稍后介绍。目录下还有一个apps.py文件,作用之后了解
2.定义模型
打开models.py并创建模型:
from django.db import models
class Topic(models.Model):
"""用户学习的主题"""
text = models.CharField(max_length=200)
date_added = models.DateTimeField(auto_now_add=True)
def __str__(self):
"""返回模型的字符串表示"""
return self.text
我们创建了一个名为Topic 的类,它继承了Model ——Django中一个定义了模型基本功能的类
。Topic 类只有两个属性:text 和date_added。属性text是一个CharField——由字符或文本组成的数据
。需要存储少量的文本,如名称、标题或城市时,可使用CharField 。定义CharField 属性时,必须告诉Django该在数据库中预留多少空间。属性date_added 是一个DateTimeField ——记录日期和时间的数据
。我们传递了实参auto_add_now=True ,每当用户创建新主题时,这都让Django将这个属性自动设置成当前日期和时间。
要获悉可在模型中使用的各种字段,戳下方链接:
模型字段的官方文档
我们需要告诉Django,默认应使用哪个属性来显示有关主题的信息。Django调用方法__str__() 来显示模型的简单表示。在这里,我们编写了方法__str__() ,它返回存储在 属性text中的字符串
3.激活模型
打开settings.py,将应用添加进去。
--snip--
INSTALLED_APPS = (
--s