Dajngo02_第一个Django案例

Dajngo02_第一个Django案例


经过之前学习,我们已经可以创建Django环境

现在开始尝试快速使用Django开发一个案例

案例:利用Django实现一个查看当前时间的web页面。

在django中要提供数据展示给用户,一般情况下我们需要完成3个步骤:

  1. 在urls.py中设计url与视图的映射关系
  2. 创建子应用,在views.py中构建视图函数
  3. 将变量嵌入到模板中返回客户端

2.1 创建子应用

子应用的名称将来会作为目录名而存在,所以不能出现特殊符号,不能出现中文等多字节的字符

python manage.py startapp 子应用名称
python manage.py startapp ntime

image-20230727174807230

创建子应用之后需要注册app,( 将我们创建的子应用加入配置文件,让主配置文件知道这个子应用 )

image-20230727181814461

2.2 绑定路由

HelloDjango/urls.py代码:

from django.contrib import admin
from django.urls import path
from ntime import viewsurlpatterns = [path('admin/', admin.site.urls),path('times',views.times)
]

2.3 创建视图函数

ntime/view.py,代码:

from django.shortcuts import render, HttpResponse# Create your views here.import datetime
def times(request):now = datetime.datetime.now().strftime("%Y-%m-%d %X")# return HttpResponse(now)return render(request, "timer.html", {"now": now})

2.3 创建网页模板

1) 创建 templates 文件夹

image-20230727180332432

2)为 templates 文件夹 赋予模板属性

image-20230727180445142

3)在模板文件夹下 创建 展示的网页文件 timer.html

由于版本原因:需要去 配置文件中 指定路径寻找模板

在 setting文件中的TEMPLATES:

image-20230727180909705

改为(将会在根目录下的templates中找【优先】):

TEMPLATES = [{'BACKEND': 'django.template.backends.django.DjangoTemplates','DIRS': [os.path.join(BASE_DIR, 'templates')],'APP_DIRS': True,'OPTIONS': {'context_processors': ['django.template.context_processors.debug','django.template.context_processors.request','django.contrib.auth.context_processors.auth','django.contrib.messages.context_processors.messages',],},},
]

timer.html 内容:

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Title</title><style>span{color: red;}</style>
</head>
<body><h3>当前时间:<span>{{ now }}</span></h3></body>
</html>

2.4 运行

(my_dj02_venv) PS F:\pycharmspace\Django\My_Django_02\HelloDjango> python manage.py runserver

因为上面我们绑定 times 视图函数的url地址是index,所以我们可以通过http://127.0.0.1:8000/times 地址来访问视图函数

image-20230727181519061

如果每次运行项目都要在终端下输入运行命令的话,比较麻烦,这时候我们可以借助pycharm直接自动运行这段命令

需要在pycharm配置一下

点击这个小三角,选择 Edti…

image-20230727182015149

可以在runserver 参数后配置修改django监听的端口和IP地址

注意:只能是127.0.0.1对应的其他地址.不能是任意IP.否则无法运行或访问!!

runserver 127.0.0.1:8000

image-20230727182502310

之后就可以点击 绿色三角(run …) 运行了

image-20230727182354610

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/109383.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

WebGL 绘制矩形

上一节绘制了圆点&#xff0c;调用的绘制方法如下&#xff1a;gl.drawArrays(gl.POINTS, 0, 1); 第一个参数明显是个枚举类型&#xff0c;肯定还有其他值&#xff0c;如下所示&#xff1a; POINTS 可视的点LINES 单独线段LINE_STRIP 线条LINE_LOOP 闭合线条TRIANGLES 单独三…

读取XML的几种方式

一、为什么使用XML 1、便于不同应用程序之间通信。 2、便于不同平台之间通信。 3、便于不同平台之间数据共享。 二、Dom读取 xml文件内容 <?xml version"1.0" encoding"UTF-8"?> <bookstore><book id"1"><name>冰…

《JDK17新特性和代码案例演示》

《JDK17新特性和代码案例演示》 &#x1f337;&#x1f341; 博主猫头虎&#xff08;&#x1f405;&#x1f43e;&#xff09;带您 Go to New World✨&#x1f341; &#x1f984; 博客首页——&#x1f405;&#x1f43e;猫头虎的博客&#x1f390; &#x1f433; 《面试题大全…

mysql 日志总结

mysql 根据日志的功能&#xff0c;分6种 慢查询日志&#xff1a;记录所有执行时间超过 long_query_time 的所有查询&#xff0c;方便我们对查询进行优化通用查询日志&#xff1a;记录所有连接的起始时间和终止时间&#xff0c;以及连接发送给数据库服务器的所有指令&#xff0…

GcExcel:Java 应用创建、修改和保存 Excel 电子表格 -Crack

在 Java 应用程序中创建、修改和保存 Excel 电子表格&#xff1a; GrapeCity Documents for Excel&#xff0c;Java 版 (GcExcel) 是一个高速 Java Excel 电子表格 API 库&#xff0c;不需要依赖于 Microsoft Excel。用户可以通过 Java 应用程序以编程方式创建、编辑、导入和导…

供应商整合对企业有哪些好处?

企业采购总是希望降低成本&#xff0c;赢得更多的利润。实现这目标的其中一种方法就是供应商整合。 究竟什么是供应商整合&#xff1f;整合供应商有哪些好处&#xff1f;本文为你详细解答。 什么是供应商整合&#xff1f; 供应商整合是减少特定产品或服务的供应商数量的过程。…

Pdf文件签名检查

如何检查pdf的签名 首先这里有一个已经签名的pdf文件&#xff0c;通过pdf软件可以看到文件的数字签名。 下面就是如何代码检查这里pdf文件的签名 1.引入依赖 <dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId&g…

20230915-DBeaver 23.2.0 版本提取mybatis注解版内容未开启

1、21.2.1版本的是可以的直接提取sql的&#xff0c;例如 复制mybatis 注解版中的script中的内容到dbeaver的编辑器中会自动帮我们将多余的符号去除 Select("<script>" "SELECT * FROM book a1\r\n" "WHERE DATE_FORMAT(a1.date, %Y-%m-%d) #…

第31章_瑞萨MCU零基础入门系列教程之WIFI蓝牙模块驱动实验

本教程基于韦东山百问网出的 DShanMCU-RA6M5开发板 进行编写&#xff0c;需要的同学可以在这里获取&#xff1a; https://item.taobao.com/item.htm?id728461040949 配套资料获取&#xff1a;https://renesas-docs.100ask.net 瑞萨MCU零基础入门系列教程汇总&#xff1a; ht…

芯片设计流程

VLSI 代表超大规模集成&#xff08;Very Large Scale Integration&#xff09;&#xff0c;这是一种通过将数百万个晶体管集成到单个芯片中来创建集成电路 (IC) 的技术。超大规模集成电路技术可以生产出紧凑、功能强大且低成本的微处理器、存储芯片、数字信号处理器和其他先进电…

人脸识别三部曲

人脸识别三部曲 首先看目录结构图像信息采集 采集图片.py模型训练 训练模型.py人脸识别 人脸识别.py效果 首先看目录结构 引用文121本 opencv │ 采集图片.py │ 训练模型.py │ 人脸识别.py │ └───trainer │ │ trainer.yml │ └───data │ └──…

React总结1

3 React技术 React是Facebook于2013年开源的框架。React解决的是前端MVC框架中的View视图层的问题。 3.1 Virtual DOM* DOM&#xff08;文档对象模型Document Object Model&#xff09; 将网页内所有内容映射到一棵树型结构的层级对象模型上&#xff0c;浏览器提供对DOM的支…