四、创建应用

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

(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项目创建应用(二)的更多相关文章

  1. Django学习之二:Django 项目创建 和 应用创建

    Django 项目创建 和 应用创建 创建一个Django项目 都是在相应平台的命令行环境下操作: 1. 进入用于存放项目的目录下 1.1 windows下切换目录:先进入具体的分区磁盘中如E盘就输入 ...

  2. Web框架之Django_01初识(三大主流web框架、Django安装、Django项目创建方式及其相关配置、Django基础三件套:HttpResponse、render、redirect)

    摘要: Web框架概述 Django简介 Django项目创建 Django基础必备三件套(HttpResponse.render.redirect) 一.Web框架概述: Python三大主流Web ...

  3. Django项目创建02

    Django项目创建(ubuntu环境) 1.    创建项目目录,我是在root下创建了一个workspace文件夹:mkdir workspace  然后cd到该目录下 命令:django-adm ...

  4. 路飞-后台Django项目创建

    后台:Django项目创建 环境 """ 为luffy项目创建一个虚拟环境 >: mkvirtualenv luffy """ &qu ...

  5. 后台:Django项目创建

    后台:Django项目创建 环境 """ 为luffy项目创建一个虚拟环境 >: mkvirtualenv luffy """ &qu ...

  6. 【Django笔记0】-Django项目创建,settings设置,运行

    Django项目创建,settings设置,运行 1,项目创建 ​ 通过pip下载Django以后,在cmd中cd到想要创建项目的路径,之后输入: django-admin startproject ...

  7. Django 项目创建到启动(最全最详细的第一个项目)

    一.前言 (一).概述 Python下有许多款不同的 Web 框架.Django是重量级选手中最有代表性的一位.许多成功的网站和APP都基于Django. Django是一个开放源代码的Web应用框架 ...

  8. python django项目创建及前期准备(使用pycharm)

    一.创建django项目 1.打开pycharm软件 2.点击菜单栏 File-->New Project,弹出如下对话框,如下图设置 二.基本配置 1.静态文件目录配置(用于客户端访问后台服务 ...

  9. windows下django项目创建流程

    一.创建djangoa项目 1.将python39\Scripts 加入系统环境变量. 2.django-admin startproject 项目名称 二.设置setting 1.语言设置zh-ha ...

  10. 为django项目创建虚拟环境

    1. 先创建一个存放虚拟环境的目录  /opt/venl mkdir /opt/venl 2. cd 到该存放虚拟环境的目录下,并创建一个虚拟环境 virtualenv是如何创建“独立”的Python ...

随机推荐

  1. P31_全局配置 - window - 设置上拉触底的距离

    window 设置上拉触底的距离 概念:上拉触底是移动端的专有名词,通过手指在屏幕上的上拉滑动操作,从而加载更多数据的行为. 设置步骤: app.json -> window -> 为 o ...

  2. OWASP 靶机下载

    OWASP靶机下载安装详细过程一. OWASP靶机下载二. VM虚拟机三. OWASP安装四. OWASP启动运行一. OWASP靶机下载下载地址:https://sourceforge.net/pr ...

  3. 【USACO 2021 February Contest, Platinum】Problem 1 No Time to Dry

    \(\text{Solution}\) 一个点可与另一个颜色相同点同时涂色当且仅当两点间颜色都大于等于这两点 那么我们可以预处理一个点向左向右最远能到的位置,记为 \(l_i,r_i)\) 当 \(l ...

  4. Activiti-25张表对应的关系以及常用接口

    Activiti-25张表对应的关系以及常用接口 Activiti工作流25张表的含义: 其他表 act_evt_log: 流程事件日志记录表 act_procdef_info: 流程定义动态变更信息 ...

  5. 《爆肝整理》保姆级系列教程-玩转Charles抓包神器教程(9)-Charles如何修改请求参数和响应数据-上篇

    1.简介 宏哥之前一直用postman调接口比较多(web端),也非常容易上手和操作.但有时候想要去修改APP的页面展示,造数据又会比较麻烦,你自己造相对还好些,要是让开发造,还得低眉顺眼的去求人.通 ...

  6. html(Angular) 调用本地安装exe程序

    1.写注册表 新建 .reg文件 Windows Registry Editor Version 5.00 [HKEY_CLASSES_ROOT\creoparametric] "URL P ...

  7. 关于vue组件传值和事件绑定问题

    <template> <view style="width: 100%; height: 100%;"> <view class="tabs ...

  8. EF core 反向工程 连接字符串

    Scaffold-DbContext 'Data Source=.;Initial Catalog=DB;User ID=sa;Password=1;Integrated Security=true; ...

  9. [GKCTF2021]random

    [GKCTF2021]random 本题出现了MT19937伪随机数生成算法. 目录 [GKCTF2021]random 题目 分析 MT19937算法 步骤 代码实现 解法1 解法2 总结 题目 t ...

  10. nginx 与 k8s ingress 配置转发websocket

    环境 10.1.100.10:70 是后端websocket 服务 需要通过nginx 向后端转发,nginx 配置文件如下 # cat test-ue4.conf map $http_upgrade ...