Django项目创建应用(二)

四、创建应用

一个项目里可以创建多个应用,每个应用进行一种业务处理

(1)激活当前项目的环境

D:\pythonProject2023\djangoProject>activate python3.8forDjango

 

(python3.8forDjango) D:\pythonProject2023\djangoProject>conda info -e

# conda environments:

#

myenv                    C:\Users\yc\.conda\envs\myenv

base                     D:\ProgramData\Anaconda3

python3.8env             D:\ProgramData\Anaconda3\envs\python3.8env

python3.8forDjango    *  D:\ProgramData\Anaconda3\envs\python3.8forDjango

 

(2)创建应用 myApp

(python3.8forDjango) D:\pythonProject2023\djangoProject>python manage.py startapp myApp

 

1、myApp的目录结构

 

 

 (1)migrations:这是一个目录,用于存储应用的数据库表结构的指令,通过这些指令可以修改和创建数据库,从而实现models.py模型类和数据库表之间迁移。

(2)admin.py:自定义Django管理工具,比如设置在管理界面能够管理的项目,或者通过重新自定义与系统管理有关的类对象,向管理功能增加新的内容。

(3)apps.py:Django1.10之后增加的,通常包含对应用的配置,比如为管理功能提供一个合适的应用名称。

(4)models.py:这是应用的数据模型,每个Django应用都应当有一个models.py文件,虽然该文件可以为空,但不宜删除。

(5)tests.py:在这个文件中可以编写测试文档来测试所创建的应用。

(6)views.py:这是一个重要的文件,用于保存响应各种请求的函数或者类。如果编写的是函数,则基于函数的视图;如果编写的是类,则称为基于类的视图。views.py就是保存函数或者类的视图文件。当然,也可以用其他的文件名称,只不过在引入相应函数或者类时,要注意名称的正确性,views.py是我们习惯使用的文件名称。

2、激活应用

 

 3、 定义模型

 

 

 

 4、安装mysql驱动

D:\pythonProject2023\djangoProject> pip3 install pymysql

 

5、 生成迁移文件

D:\pythonProject2023\djangoProject>python manage.py makemigrations

 

 

 

 

6、 执行迁移文件

D:\pythonProject2023\djangoProject>python manage.py migrate

 

 

 

 

此时数据库里多了myapp_test表,此外还生成了一些其他的表暂时不用管。

 

 

 

 

7、 测试模型操作数据

D:\pythonProject2023\djangoProject>python manage.py shell

 

 

 

 

引入相关的类 其中Test是自己创建的模型

>>> from myApp.models import Test

>>> from django.utils import timezone

>>> from datetime import *

(1)查询数据

Test.objects.all()

 

 

 

 

(2)添加数据

test = Test()

test.name ="testname"

test.save()

 

 

 

 数据库了就有数据了

 

 

 

 再次查询结果很爽

>>> Test.objects.all()

 

 

 

 

为了解决返回值问题进行如下操作

<1>添加返回值

 

 

 

 

<2>退出shell环境,重新引入类,执行查询

 

 

 

 

 

(3)查询某条数据

>>> Test.objects.get(pk=1)

 

 

 

 

(4)修改数据

>>> Test.objects.get(pk=1)

<Test: testname>

>>> t = Test.objects.get(pk=1)

>>> t.name = "newName"

>>> t.save()

>>> Test.objects.get(pk=1)

<Test: newName>

 

 

 

 

(5)删除数据

删除不用保存直接生效

>>> t.delete()

(1, {'myApp.Test': 1})

 

8、让程序运行起来

D:\pythonProject2023\djangoProject>python manage.py runserver

 

 

 

 

浏览器查看

 

 

 

 

9、创建超级管理员

python manage.py  createsuperuser

注:密码为1

 

 

 

 

进入管理界面

 

 

 

 

 

10、汉化

 

 

 

修改后重启服务

 

 

 

11、管理数据表

注册模型

 

 

 

注册后表就可以在页面上看到

 

 

 

12、查看列表改造

为了显示效果,模型里增加一个age属性

 

 

(1) 显示字段

这是展示列表的顺序

 

 

 

 

 

 

(2)过滤器

 

 

 

(3)查找

 

 

 

 

(4)顺序

这里展示数据详情的顺序

 

 

 

 

 

 

 

 

 

五、视图

 

1、定义视图

 

 

 

 

2、在myApp下创建一个urls.py 内容如下图

haha 是任意的一个字符串,是访问路径,views.index后面的index就是上一步创建的函数

 

 

 

3、在根目录的urls.py中引入myApp应用中的urls.py,下图中的test可以任意写

 

 

 

4、浏览器访问得到函数的返回结果

 

 

posted @ 2023-02-16 18:20  万笑佛  阅读(70)  评论(0编辑  收藏  举报