使用django的MTV开发模式返回一个网页
1.MTV开发模式介绍
M:Models 模型(数据)
与数据组织相关的功能。组织和存储数据的方法和模式,与数据模型相关的操作。
T:Templates 模板(样式)
与表现相关的所有功能。页面展示风格和方式,与具体数据分离,用于定义表现风格。
V:Views 视图(处理)
针对请求选取数据的功能。选择哪些数据用于展示,指定显示模板,每个URL对应一个回调函数。

2.新建一个应用
在上一篇的基础上继续改进。django最小程序开发流程
python manage.py startapp hello2app
3.修改hello2app
hello2app中的views.py代码如下
from django.shortcuts import render # Create your views here.
def hello(request):
return render(request,"hello.html")
其中的render()是一个打包函数,第一个参数是request,第二个参数是页面。
还需要在hello2app中增加一个templates文件夹,并在文件夹内放入模板文件,此处为hello.html
4.增加本地路由
所谓本地路由,就是在这个应用内的路由文件。在hello2app中新增urls.py,代码如下
from django.urls import path
from . import views ##引入第3步写的views.py urlpatterns=[
path('',views.hello) ##本地路由的函数调用
]
啧,写这一步还踩了个坑。打字老是把字母顺序打反,之前也有这样的经历,看了半天不知道哪错了。最后才发现把from打成form了,唉
5.增加对本地路由的引用
在全局路由文件中增加对本地应用路由的引用。修改mysite\mysite\urls.py文件为如下内容
from django.contrib import admin
from django.urls import path,include ##include函数,用于引入其他路由文件
from helloapp import views urlpatterns = [
path('index2/',include('hello2app.urls')), ##将hello2app的局部路由增加到全局路由中
path('index/',views.hello),
path('admin/', admin.site.urls),
]
6.设置模板路径
修改mysite\mysite\settings.py。修改其中的TEMPLATES = []。将DIRS中增加templates目录
'DIRS': [os.path.join(BASE_DIR,'hello2app/templates')], ##将BASE_DIR主路径和后面的路径合并
DIRS是一个列表,还可以继续添加其他路径。
使用django的MTV开发模式返回一个网页的更多相关文章
- 03.Django的MTV开发模式详解和模型关系构建
ORM:对象关系映射 一:MTV开发模式把数据存取逻辑.业务逻辑和表现逻辑组合在一起的概念有时被称为软件架构的 Model-View-Controller(MVC)模式. 在这个模式中,Model 代 ...
- Django MTV 开发模式 + 数据库配置
MTV 开发模式 Django 的设计鼓励松耦合及对应用程序中不同部分的严格分割.遵循这个理念的话,要想修改应用的某部分而不影响其它部分就比较容易了.在视图函数中,我们已经讨论了通过模板系统把业务逻辑 ...
- django入门(二)MTV开发模式
MTV开发模式,顾名思义,M是models,T是templates,V是view. 之前的教程没有牵扯到html,然后今天将告诉你如何转到自己做的静态页面 首先还是先创建一个app,python ma ...
- Django 配置访问顺序 ->MTV开发模式
框架模式mvc m-->model 数据库 v-->view 视图 c-->controller 控件逻辑 mtv(django) m-->model 数据库 t--> ...
- 用JSP+JavaBean开发模式实现一个销售额的查询
数据库使用mysql,如下: vo包的Sales类: package com.vo; public class Sales { public String salestime; public fl ...
- 用VS2010创建三层架构开发模式及三层架构的研究
三层架构的研究 三层体系结构的概念 用户界面表示层(USL) 业务逻辑层(BLL) 数据访问层(DAL) BLL将USL与DAL隔开了,并且加入了业务规则 各层的作用 1:数据数据访问层:主要是对 ...
- SSH开发模式——Struts2(第一小节)
在制定了学习计划的学习过程中,我感觉学习还是很有效率的.很短的时间内,我便学习完了JavaWeb的连接池.DbUtils框架及其一些工具类的使用. 学无止境,学习这些知识还远远不够,所以,在接下来的时 ...
- Django的MTV模式详解
参考博客:https://www.cnblogs.com/yuanchenqi/articles/7629939.html 一.MVC模型 Web服务器开发领域里著名的MVC模式. 所谓MVC就是把W ...
- day56——http协议、MVC和MTV框架模式、django下载安装、url路由分发
day56 昨日复习 今日内容 HTTP协议 网页:https://www.cnblogs.com/clschao/articles/9230431.html 老师整理的重点 老师整理的重点 请求信息 ...
随机推荐
- 基于 SpringBoot2.0+优雅整合 SpringBoot+Mybatis
SpringBoot 整合 Mybatis 有两种常用的方式,一种就是我们常见的 xml 的方式 ,还有一种是全注解的方式.我觉得这两者没有谁比谁好,在 SQL 语句不太长的情况下,我觉得全注解的方式 ...
- Scala词法文法解析器 (一)解析SparkSQL的BNF文法
平台公式及翻译后的SparkSQL 平台公式的样子如下所示: if (XX1_m001[D003]="邢おb7肮α䵵薇" || XX1_m001[H003]<"2& ...
- 【Gamma】“北航社团帮”发布说明——小程序v3.0
目录 Gamma版本新功能 小程序v3.0新功能 新功能列表 新功能展示 这一版修复的缺陷 Gamma版本的已知问题和限制 小程序端 网页端 运行.安装与发布 运行环境的要求 安装与发布 小程序 网页 ...
- [Gamma] 项目展示
[Gamma] 项目展示 一.工程展示 1.项目简介 定位分析 我们的目标是做一个创意分享网站,在之前的阶段中完成了大框架的搭建,并以此为基础进行界面优化与功能扩展. 典型用户 用户 面临困境 需求功 ...
- java中的Serializable接口
实现java.io.Serializable 接口的类是可序列化的.没有实现此接口的类将不能使它们的任一状态被序列化或逆序列化. 序列化类的所有子类本身都是可序列化的.这个序列化接口没有任何方法和域, ...
- jdk 1.6 新特性
JDK1.6新特性 1.DestTop类和SystemTray类 前者用于调度操作系统中的一些功能,例如: · 可以打开系统默认浏览器指定的URL地址: · 打开系统默认邮件客户端给指定的邮箱发信息: ...
- 转 Hystrix超时实现机制
HystrixCommand在执行的过程中如何探测超时,本篇主要对此进行介绍说明. 1.主入口:executeCommandAndObserve #com.netflix.hystrix.Abstra ...
- FPGA成神之路
先占个坑,网上写的都太没有体系了,打算写一个从电路到语法,从软件使用到硬件调试,从IP核调用到时序分析的系列帖子,人就是太懒,想把自己这两年踩的坑分享一下,加油,特种兵
- Django 模板语言 条件判断
Django 模板语言 条件判断 ############### 条件 ################## # view 文件 def func(request): ... return rende ...
- Grafana邮件报警
一.概述 报警是Grafana的一项革命性功能,它让Grafana从一个数据可视化工具变成一个真正的任务监控工具.报警规则可以使用现有的图表控制面板设置,阈值可以通过拖拉右边的线控制,非常简单.Gra ...