DJANGO_PART 1

server/2024/11/14 12:31:46/

DJANGO_PART 1

文章目录

  • DJANGO_PART 1
    • 1. 安装DJANGO
    • 2. 创建项目
    • 3. APP概念
    • 4. 快速上手
    • 5. templates
    • 6. 引入其它静态文件
    • 7. 模板语法
    • 8. 请求与响应

1. 安装DJANGO

安装语句:pip install django

2. 创建项目

django中项目会有一些默认的文件和默认的文件夹

  • 终端创建

    • 打开终端,进入某个目录(项目的地址)
    • 执行命令创建项目:startproject ProjectName(如果已加入环境系统环境变量:django-admin startproject ProjectName)
  • PyCharm创建

    • 注意:

    • 选择项目目录(项目存放的地址,不是python安装的地址)

    • 命令行创建的项目是标准的;pycharm在标准的基础上默认添加了:

      • templates目录(暂时不需要,可删除)

      • settings.py添加了一句(暂时不需要,可删除):

        image-20240508104305110

  • 默认项目的文件介绍

    image-20240508104648090

    • manage.py(项目的管理,启动项目、创建app、数据管理,一般不用动)
    • djangoLearning(与项目文件同名的文件夹)
      • __ init __.py
      • settings.py(项目配置)
      • urls.py(url和函数的对应关系)
      • asgi.py(默认,接收网络请求,一般不用动)
      • wsgi.py(默认,接收网络请求,一般不用动)

3. APP概念

举例:

  • 项目
    • app,用户管理
    • app,订单管理
    • app,后台管理

一个项目往往有多个app,也可只有一个app

  • APP的创建:python manage.py startapp AppName

  • APP默认文件结构

    image-20240508110125402

    • migrations(固定,一般不用动)(数据库变更记录)
      • __ init __.py(固定,一般不用动)
    • __ init __.py
    • admin.py(固定,一般不用动)(django默认提供了admin后台管理)
    • apps.py(固定,一般不用动)(app启动类)
    • models.py(对数据库进行操作)
    • tests.py(固定,一般不用动)(单元测试)
    • views.py(一般在这里调用函数)

4. 快速上手

  • 确保app已注册

    image-20240508111259496

  • 编写url和视图函数对应关系

    image-20240508111907590

  • 编写视图函数

    image-20240508112133884

  • 启动项目

    • 命令行启动:python manage.py runserver

    • pycharm启动:

      image-20240508112741050

      image-20240508112659068

    • 打开链接:

      image-20240508112922941

    • 再写一个页面:

      image-20240508160654399

      image-20240508160728278

      image-20240508162335685

5. templates

  • 引入静态html页面

    image-20240508161839549

    image-20240508161912108

    image-20240508162829676

  • 注意

    • 优先去项目根目录的templates中寻找html文件(必须要提前先配置,不配置没有用)
    • 根据app的注册顺序,在每个app下的templates目录中寻找

6. 引入其它静态文件

在开发过程中一般将图片、css、js、都当作静态文件处理

  • static目录:在app目录下创建static文件夹

    image-20240508164417351

  • 引用静态文件

    image-20240508164703189

    image-20240508165219093

7. 模板语法

本质上就是:在HTML中写一些占位符,由数据对这些占位符进行替换和处理

  • 字符串

    image-20240508170548782

    image-20240508170643937

  • 列表

    • 显示列表的单个元素:

      django"><div>{{ list.1 }}
      </div>
      
    • 遍历列表:

      django"><div>{% for item in list %}<span>{{ item }}</span>{% endfor %}
      </div>
      

    image-20240508171202947

    image-20240508171219737

  • 字典

    • 显示整个字典:

      django"><div>{{ dict }}
      </div>
      
    • 显示字典的某个元素:

      django"><div><span>{{ dict.name }}</span><span>{{ dict.age }}</span><span>{{ dict.job }}</span>
      </div>
      
    • 遍历字典:

      django"><div>{% for k, v in dict.items %}<span>{{ k }} : {{ v }}</span>{% endfor %}
      </div>
      

    image-20240508172323115

    image-20240508172344576

  • 模板语法也支持if语法

    django">{% if dict.age == 18 %}<div>年龄为18岁</div>
    {% else %}<div>年龄不为18岁</div>
    {% endif %}
    

    image-20240508182950797

    image-20240508183010039

8. 请求与响应

  • 请求

    # request是一个对象,封装了用户发送过来的所有请求相关的数据# 获取请求方式:GET/POST
    print(request.method)# 在url上传递值:http://localhost:8000/reqTest/?name=ausgelebt&age=18
    print(request.GET)# 在请求体中传递数据
    print(request.POST)
    
  • 响应

    # (响应)HttpResponse("word"),字符串内容返回给请求者
    # return HttpResponse("返回内容")# (响应)读取html的内容,并渲染/替换
    # return render(request, 'index.html')# (响应)让浏览器重定向到其它的页面
    return redirect('https://www.baidu.com')
    

http://www.ppmy.cn/server/38514.html

相关文章

只允许内网访问时,如何设置hosts

1、Hosts文件简介 hosts文件是一个没有扩展名的计算机文件&#xff0c;用于将主机名与对应的 IP 地址关联起来。在操作系统中&#xff0c;hosts文件通常用于在本地解析域名&#xff0c;以便将域名映射到特定的IP地址。这个文件可以用来屏蔽广告、加速访问特定网站、解决DNS解析…

【Linux】线程的内核级理解详谈页表以及虚拟地址到物理地址之间的转化

一、线程的概念 对于进程来说&#xff0c;进程创建时间和空间成本较高&#xff0c;因为进程是承担分配系统资源的基本实体&#xff0c;所以线程的出现就成为了必然。Linux线程与进程非常相似&#xff0c;Linux设计者在设计之初觉得如果再为线程设计数据结构和调度算法就会使整个…

Python实现Chiikawa

写在前面 哈&#xff1f;呀哈&#xff01;本期小编给大家素描版Chiikawa&#xff01; 主人公当然是我们可爱的吉伊、小八以及乌萨奇啦~ Chiikawa小小可爱 《Chiikawa》是一部来自日本的超萌治愈系漫画与动画作品&#xff0c;由作者秋田祯信创作。"Chiikawa"这个名字…

负载或反向代理服务器如何配置XFF以获取终端真实IP

文章目录 XFF介绍工作原理注意事项 配置方式1. Nginx2. HAProxy3. F5 BIG-IP4. Radware注意事项 本文介绍如何在反向代理或负载中配置XFF&#xff0c;方便后端服务获取请求来源的真实IP XFF介绍 X-Forwarded-For&#xff08;简称XFF&#xff09;是一个非标准的HTTP头部字段&a…

HCIP-Datacom-ARST必选题库_OSPF【道题】

某工程师利用2台路由器进行IPv6测试&#xff0c;他想要通过运行OSPFv3实现IPv6网络的互联互通。关于R1需要进行的OSPPv3相关配置&#xff0c;正确的有? [R1] router id 10.1.1.1A [R1-Giqabi tEthernet0/0/1] ospfv3 1 area 0 [R1-ospfv3-11 router-id 10.1.1.1 [R1-ospfv3…

图数据库 之 Neo4j 与 AI 大模型的结合绘制知识图谱

引言 随着信息时代的到来&#xff0c;海量的文本数据成为了我们获取知识的重要来源。然而&#xff0c;如何从这些文本数据中提取出有用的信息&#xff0c;并将其以可视化的方式展示出来&#xff0c;一直是一个具有挑战性的问题。近年来&#xff0c;随着人工智能技术的发展&…

C语言 | Leetcode C语言题解之第77题组合

题目&#xff1a; 题解&#xff1a; int** combine(int n, int k, int* returnSize, int** returnColumnSizes) {int* temp malloc(sizeof(int) * (k 1));int tempSize 0;int** ans malloc(sizeof(int*) * 200001);int ansSize 0;// 初始化// 将 temp 中 [0, k - 1] 每个…

【vue+el-upload】当action=“#“,代表不使用默认上传,使用自定义上传,http-request获取文件流

el-upload有多种上传行为&#xff1a; 1、立即上传&#xff1a; 当 action 属性被赋予一个有效的 URL 时&#xff0c;一旦用户选择了文件&#xff0c;el-upload 组件会立即自动将文件上传到指定的服务器地址。 2、不立即上传&#xff08;自定义触发&#xff09;&#xff1a; 如…