python Web框架(2):Django创建应用程序

2020-05-13  本文已影响0人  烂笔头2020

项目名称:学习笔记
作用:让用户能够记录感兴趣的主题,并在学习每个主题的过程中添加日志条目。“学习笔记”的主页对这个网站进行描述,并邀请用户注册或登录。用户登录后,就可以创建新主题、添加新条目以及阅读既有的条目。

继续上一篇的内容,下面是接着在上一篇的内容上继续进行操作的。(我用的是windows系统)

7、创建应用程序

Django项目由一系列应用程序组成,他们协同工作,让项目成为一个整体。下面先创建一个应用程序。
当前在前面打开终端窗口中还运行着runserver。


(1)再打开一个终端窗口,并切换到manage.py所在的目录。激活该虚拟环境,再执行startapp:
(ll_env)learning_log$ python manage.py startapp learning_logs
(ll_env)learning_log$ dir learing_logs

其中重要文件是models.py、 admin.py和views.py

(2)编写models.py文件代码:
models.py

我们将使用models.py来定义我们要在应用程序中管理的数据。模型告诉Django如何处理应用程序中存储的数据,在代码层面,模型就是一个类。


Django模型字段参考

下面是在models.py中编写的代码:

from django.db import models

# Create your models here.
class Topic(models.Model): #继承Model
    """用户学习的主题"""
    text = models.CharField(max_length=200) #varchar(200)的字符串类型,储存用户输入的条目
    date_added = models.DateTimeField(auto_now_add=True) #日期-时间类型,auto_now_add=True表示在每次对象被创建的时候自动设置为当前的时间(第一次创建的时间)
    
    def __str__(self):
        """返回模型的字符串表示,显示模型的简单表示"""
        return self.text
(3)激活模型

要使用模型,必须让Django将应用程序包含到项目中。为此打开settings.py(在项目learing_log目录下),看到这样的片段:



即告诉Django哪些应用程序安装在项目中,告诉Django项目是哪些应用程序组成的。现在将这个片段进行修改,将前面的应用程序添加到里面,如下:


接下来需要让Django修改数据库,使其能够存储与模型Topic相关的信息,在终端输入以下命令:

(ll_env)learning_log$  python manage.py makemigrations learning_logs
#输出结果
Migrations for 'learning_logs':
  learning_logs\migrations\0001_initial.py
    - Create model Topic

输出表明Django创建了一个名为0001_initial.py的迁移文件,这个文件将在数据库中为模型Topic创建一个表。下面应用这种迁移来让Django替我们修改数据库:

(ll_env)learning_log$ python manage.py migrate
#输出结果
Operations to perform:
  Apply all migrations: admin, auth, contenttypes, learning_logs, sessions
Running migrations:
  Applying learning_logs.0001_initial... OK

主要看最后一行就可以了,这里说明迁移时一切正常。
每当要修改 “学习笔记” 这个项目的管理数据时,都采取如下三个步骤:

①修改models.py;
②对learing_logs(前面创建的应用程序名)调用makemigrations命令产生迁移文件;
③让Django迁移项目:python manage.py migrate。

8、建立Django管理网站
(1)创建超级用户
(ll_env)learning_logs$ python  manage.py  createsuperuser
(2)向管理网站注册模型

创建应用程序learning_logs的admin.py文件:


admin.py

修改后:


使用超级用户账户访问管理网站:http://localhost:8000/admin/,并输入刚创建的用户名和密码。
这个网站可以让你能够添加和修改用户和用户组,还可以管理与刚才定义的模型Topic相关数据。

注册好Topic后可以添加主题试一下哦!


上一篇下一篇

猜你喜欢

热点阅读