Django -视图

视图 - 是具体的业务代码

在 app 下的 views.py 文件中编写代码

python 复制代码
from django.http import HttpResponse

def index(request):
    return HttpResponse("这里是我的站点")

  为了调用该视图,我们还需要编写urlconf,也就是路由配置。在polls目录中新建一个文件,名字为urls.py(不要换成别的名字),在其中输入代码如下:

python 复制代码
from django.urls import path
from . import views
urlpatterns = [
    path('', views.index, name='index'),
]

  接下来,在项目的主urls.py文件中添加urlpattern条目,指向我们刚才建立的polls这个app独有的urls.py文件,这里需要导入include模块。打开mysite/urls.py文件,代码如下:

python 复制代码
from django.contrib import admin
from django.urls import include, path

urlpatterns = [
    path('polls/', include('polls.urls')),
    path('admin/', admin.site.urls),
]

  include语法相当于多级路由,它把接收到的url地址去除与此项匹配的部分,将剩下的字符串传递给下一级路由 urlconf 进行判断。

  include的背后是一种即插即用的思想。项目的根路由不关心具体app的路由策略,只管往指定的二级路由转发,实现了应用解耦。app所属的二级路由可以根据自己的需要随意编写,不会和其它的app路由发生冲突。app目录可以放置在任何位置,而不用修改路由。这是软件设计里很常见的一种模式。

  建议:除了admin路由外,尽量给每个app设计自己独立的二级路由。

  路由设置成功后,启动服务器,然后在浏览器中访问地址

http://localhost:8000/polls/。

相关推荐
Python私教2 小时前
Django 6.1 RC1 实测:FETCH_PEERS 两条 SQL 解决 N+1,select_related 还需要吗?
后端·python·django
Python私教3 小时前
Django 6.0 自带 Tasks 到底能不能替代 Celery?跑完 3 组后台任务后我有答案了
后端·python·django
韭菜炒鸡肝天10 小时前
Django模型迁移指南:从命令用法到最佳实践
数据库·django·sqlite
weixin_BYSJ19871 天前
springboot旅游景点以及美食地图小程序---附源码75422
java·javascript·c++·spring boot·python·django·php
qq_22589174662 天前
基于Python的城市内涝积涝监测数据可视化分析系统
后端·python·信息可视化·数据分析·django
米码收割机2 天前
【Python】Python Django+Vue3校园自习室预约管理系统(源码+文档+PPT)【独一无二】
开发语言·python·django
米码收割机2 天前
【移动】线上购物移动端网站(源码+文档)【独一无二】
java·开发语言·前端·python·django
weixin_BYSJ19873 天前
springboot校园自习室管理小程序---附源码32142
java·javascript·spring boot·python·django·flask·php
智购科技自动售货机工厂3 天前
即时零售的风吹到自动售货机行业,会带来什么变化?~YH
大数据·人工智能·django·fastapi·零售·tornado
想你依然心痛3 天前
预测未来用电趋势,机器学习算法在能耗管理中的落地
随机森林·django·数据清洗·特征工程·电力负荷预测·时序数据·能耗管理