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

Django项目创建应用(二)的更多相关文章
- Django学习之二:Django 项目创建 和 应用创建
Django 项目创建 和 应用创建 创建一个Django项目 都是在相应平台的命令行环境下操作: 1. 进入用于存放项目的目录下 1.1 windows下切换目录:先进入具体的分区磁盘中如E盘就输入 ...
- Web框架之Django_01初识(三大主流web框架、Django安装、Django项目创建方式及其相关配置、Django基础三件套:HttpResponse、render、redirect)
摘要: Web框架概述 Django简介 Django项目创建 Django基础必备三件套(HttpResponse.render.redirect) 一.Web框架概述: Python三大主流Web ...
- Django项目创建02
Django项目创建(ubuntu环境) 1. 创建项目目录,我是在root下创建了一个workspace文件夹:mkdir workspace 然后cd到该目录下 命令:django-adm ...
- 路飞-后台Django项目创建
后台:Django项目创建 环境 """ 为luffy项目创建一个虚拟环境 >: mkvirtualenv luffy """ &qu ...
- 后台:Django项目创建
后台:Django项目创建 环境 """ 为luffy项目创建一个虚拟环境 >: mkvirtualenv luffy """ &qu ...
- 【Django笔记0】-Django项目创建,settings设置,运行
Django项目创建,settings设置,运行 1,项目创建 通过pip下载Django以后,在cmd中cd到想要创建项目的路径,之后输入: django-admin startproject ...
- Django 项目创建到启动(最全最详细的第一个项目)
一.前言 (一).概述 Python下有许多款不同的 Web 框架.Django是重量级选手中最有代表性的一位.许多成功的网站和APP都基于Django. Django是一个开放源代码的Web应用框架 ...
- python django项目创建及前期准备(使用pycharm)
一.创建django项目 1.打开pycharm软件 2.点击菜单栏 File-->New Project,弹出如下对话框,如下图设置 二.基本配置 1.静态文件目录配置(用于客户端访问后台服务 ...
- windows下django项目创建流程
一.创建djangoa项目 1.将python39\Scripts 加入系统环境变量. 2.django-admin startproject 项目名称 二.设置setting 1.语言设置zh-ha ...
- 为django项目创建虚拟环境
1. 先创建一个存放虚拟环境的目录 /opt/venl mkdir /opt/venl 2. cd 到该存放虚拟环境的目录下,并创建一个虚拟环境 virtualenv是如何创建“独立”的Python ...
随机推荐
- Xlight安装与使用
Xlight安装与使用 一.Xlight安装 下载Xlight安装包,点击安装,默认就可以,下一步 点击左上角增加虚拟服务器,IP地址为本机服务器IP地址 右键点击新添加的虚拟服务器,点击虚拟服务器操 ...
- CF1358D The Best Vacation
题目传送门 思路 做这道题主要是需要发现一个性质:选择的区间必定是从某一个月的最后一天开始往前连续的一段区间. 考虑如何证明这个结论,设这个月有 \(x\) 天,假设有更优的方案满足到下一个月的第 \ ...
- SpringMVC:RESTful案例
目录 相关准备 功能清单 具体功能:访问首页 ①配置view-controller ②创建页面 具体功能:查询所有员工数据 ①控制器方法 ②创建employee_list.html 具体功能:删除 ① ...
- DESIR队列:早期axSpA的脊柱放射学进展
DESIR队列:早期axSpA的脊柱放射学进展 EULAR2015; PresentID: FRI0234 SPINAL RADIOGRAPHIC PROGRESSION IN EARLY AXIAL ...
- 带你认识3个J.U.C组件扩展
摘要:本文主要为大家讲解3种J.U.C组件扩展. 本文分享自华为云社区<[高并发]J.U.C组件扩展>,作者: 冰 河. 1.FutureTask FutureTask是J.U.C(jav ...
- LeetCode-432 全O(1)的数据结构
来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/all-oone-data-structure 题目描述 请你设计一个用于存储字符串计数的数据结构 ...
- springboot加入cloud,并注册到nacos
pom.xml下新增 <dependency> <groupId>org.springframework.cloud</groupId> <artifactI ...
- TCP怎样保证可靠传输
TCP的可靠性保证 TCP主要提供了检验和,序列号/确认应答,超时重传,最大消息长度,滑动窗口控制等方法实现了可靠性传输. 检验和 通过检验和的方式,接收端可以检测出来数据是否有差错和异常,假如有差错 ...
- JDK的版本有多少种,Java开发者应该选择哪一种?
JDK的版本有多少种,Java开发者应该选择哪一种?先说结果,一般情况下,我们多数会选择OpenJDK或者AdoptOpenJDK的JDK实现,因为这是最精简最标准的版本,而且没有商业风险.另外,需要 ...
- undrop-for-innodb
undrop是一款针对mysql innodb的数据恢复工具,通过扫描文件或磁盘设备,然后解析innodb数据页进而恢复丢失的数据,对于drop.truncate以及文件损坏都很有帮助.本文介绍dro ...