四、创建应用

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

(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、浏览器访问得到函数的返回结果

最新文章

  1. LeetCode All in One 题目讲解汇总(持续更新中...)
  2. Android 笔记 day2 拨号器
  3. android和linux开发环境建立(驱动层)
  4. ie6 iframe src=&quot;javascript:&quot; 报安全警报问题
  5. MySQL查看最大连接数和修改最大连接数
  6. Linux 下查看tomcat版本
  7. flex-骰子布局
  8. MongoDB 学习使用
  9. NIO的epoll空轮询bug
  10. TZOJ:3660: 家庭关系
  11. vs2015 + Python3.5 环境搭建
  12. 23.网络.md
  13. HTML标签参考(一)
  14. 20165302Exp0 Kali安装 Week1
  15. 简洁的python测试框架——Croner
  16. 使用reactjs做一个CRUD功能
  17. 网页访问过程(基于CDN)
  18. scrollTop和scrollLeft属性
  19. 第二周leetcode
  20. Oracle数据库表空间常用操作

热门文章

  1. maven项目构建报错:Could not find artifact com.xxx.cloud:xxx-cloud:pom:1.0-SNAPSHOT and &#39;parent.relativePath&#39; points at wrong local POM
  2. STM32F4跳转函数
  3. 简要介绍WASAPI播放音频的方法
  4. 学习Java Day21
  5. element plus + vue3表单第一次数据未清空的bug问题解决
  6. 【ACR2015】依那西普按需维持治疗策略有效抑制RA骨破坏进展
  7. 基于C++的OpenGL 10 之光照贴图
  8. PostgreSQL数据库切割和组合字段函数
  9. Integer使用==比较的问题
  10. ol序号并在序号加背景色