0

0

PythonDjango基础教程_模型视图模板完整项目实战

冰川箭仙

冰川箭仙

发布时间:2026-01-02 20:05:02

|

388人浏览过

|

来源于php中文网

原创

django博客项目需按mtv模式串联模型、视图与模板:一、在models.py定义article模型并迁移数据库;二、视图函数查数据后用render传入模板;三、模板用{{}}和{% %}语法渲染,推荐继承base.html;四、通过urls.py配置路由,注意命名空间与路径参数解析。

pythondjango基础教程_模型视图模板完整项目实战

用 Django 搭建一个完整项目,核心就是把 模型(Model)视图(View)模板(Template) 三者串起来——也就是常说的 MTV 模式。下面以一个简单的「博客系统」为例,带你从零跑通整个流程,不绕弯、不堆概念,只讲关键步骤和容易踩的坑。

一、定义模型:告诉 Django 数据长什么样

models.py 里写类,每个类对应数据库中一张表。比如博客文章:

  • CharField 存标题,加 max_length=200 防止超长
  • TextField 存正文,不用限制长度
  • DateTimeField(auto_now_add=True) 自动记录发布时间
  • 别忘了运行 python manage.py makemigrationspython manage.py migrate 让数据库同步

二、编写视图:决定用户看到什么内容

视图函数接收请求,查数据,再把结果传给模板。例如首页展示所有文章:

  • 导入模型:from .models import Article
  • 查数据:articles = Article.objects.all()
  • render() 把数据和模板拼在一起:return render(request, 'blog/index.html', {'articles': articles})
  • 注意:别直接用 HttpResponse 返回纯文本,那样没法套样式和结构

三、设计模板:用 HTML 把数据“画”出来

模板放在 templates/ 文件夹下,用 Django 模板语法渲染动态内容:

Magic CMS 网站管理系统2.2.1.alpha 政企版
Magic CMS 网站管理系统2.2.1.alpha 政企版

Magic CMS网站管理系统(政企版)采用PHP+Mysql架构,再原CMS系统的基础上精简出适合企业政府客户使用版本,继承了原系统的快捷,高效,灵活,实用的特点,保留了核心功能,系统支持自定义模版(极易整合dede模板)、支持扩展插件,自定义模型等功能,保留了文章模型,视频模型,图集模型,产品模型,能够胜任企业多种建站需求。BUG修复:1.修改了程序安装时部分数据无法正常导入的错误2.修改了程

下载

立即学习Python免费学习笔记(深入)”;

  • {{ article.title }} 显示单个字段
  • {% for article in articles %}...{% endfor %} 遍历列表
  • {% url 'article_detail' pk=article.pk %} 生成带参数的 URL,前提是已在 urls.py 中配置命名路由
  • 建议用 {% extends 'base.html' %} 做模板继承,避免重复写 header/footer

四、连通路由:让网址能找得到视图

urls.py 中把 URL 路径和视图函数关联起来:

  • urls.py(项目级)用 include() 引入应用路由
  • 应用内的 urls.py 写具体映射,比如 path('', views.index, name='index')
  • 路径参数用 <pk></pk> 这种写法,Django 会自动转换并传给视图函数
  • 别漏掉 app_name = 'blog',否则命名空间 URL 可能出错

跑起来之后,访问 http://127.0.0.1:8000/ 就能看到文章列表,点进去看详情页,整个流程就闭环了。后续加后台管理、用户登录、富文本编辑,都是在这个骨架上一层层添砖加瓦。

热门AI工具

更多
DeepSeek
DeepSeek

幻方量化公司旗下的开源大模型平台

豆包大模型
豆包大模型

字节跳动自主研发的一系列大型语言模型

通义千问
通义千问

阿里巴巴推出的全能AI助手

腾讯元宝
腾讯元宝

腾讯混元平台推出的AI助手

文心一言
文心一言

文心一言是百度开发的AI聊天机器人,通过对话可以生成各种形式的内容。

讯飞写作
讯飞写作

基于讯飞星火大模型的AI写作工具,可以快速生成新闻稿件、品宣文案、工作总结、心得体会等各种文文稿

即梦AI
即梦AI

一站式AI创作平台,免费AI图片和视频生成。

ChatGPT
ChatGPT

最最强大的AI聊天机器人程序,ChatGPT不单是聊天机器人,还能进行撰写邮件、视频脚本、文案、翻译、代码等任务。

相关专题

更多
Python Web 框架 Django 深度开发
Python Web 框架 Django 深度开发

本专题系统讲解 Python Django 框架的核心功能与进阶开发技巧,包括 Django 项目结构、数据库模型与迁移、视图与模板渲染、表单与认证管理、RESTful API 开发、Django 中间件与缓存优化、部署与性能调优。通过实战案例,帮助学习者掌握 使用 Django 快速构建功能全面的 Web 应用与全栈开发能力。

163

2026.02.04

string转int
string转int

在编程中,我们经常会遇到需要将字符串(str)转换为整数(int)的情况。这可能是因为我们需要对字符串进行数值计算,或者需要将用户输入的字符串转换为整数进行处理。php中文网给大家带来了相关的教程以及文章,欢迎大家前来学习阅读。

1010

2023.08.02

int占多少字节
int占多少字节

int占4个字节,意味着一个int变量可以存储范围在-2,147,483,648到2,147,483,647之间的整数值,在某些情况下也可能是2个字节或8个字节,int是一种常用的数据类型,用于表示整数,需要根据具体情况选择合适的数据类型,以确保程序的正确性和性能。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

611

2024.08.29

c++怎么把double转成int
c++怎么把double转成int

本专题整合了 c++ double相关教程,阅读专题下面的文章了解更多详细内容。

334

2025.08.29

C++中int的含义
C++中int的含义

本专题整合了C++中int相关内容,阅读专题下面的文章了解更多详细内容。

235

2025.08.29

堆和栈的区别
堆和栈的区别

堆和栈的区别:1、内存分配方式不同;2、大小不同;3、数据访问方式不同;4、数据的生命周期。本专题为大家提供堆和栈的区别的相关的文章、下载、课程内容,供大家免费下载体验。

443

2023.07.18

堆和栈区别
堆和栈区别

堆(Heap)和栈(Stack)是计算机中两种常见的内存分配机制。它们在内存管理的方式、分配方式以及使用场景上有很大的区别。本文将详细介绍堆和栈的特点、区别以及各自的使用场景。php中文网给大家带来了相关的教程以及文章欢迎大家前来学习阅读。

605

2023.08.10

数据库三范式
数据库三范式

数据库三范式是一种设计规范,用于规范化关系型数据库中的数据结构,它通过消除冗余数据、提高数据库性能和数据一致性,提供了一种有效的数据库设计方法。本专题提供数据库三范式相关的文章、下载和课程。

385

2023.06.29

C# ASP.NET Core微服务架构与API网关实践
C# ASP.NET Core微服务架构与API网关实践

本专题围绕 C# 在现代后端架构中的微服务实践展开,系统讲解基于 ASP.NET Core 构建可扩展服务体系的核心方法。内容涵盖服务拆分策略、RESTful API 设计、服务间通信、API 网关统一入口管理以及服务治理机制。通过真实项目案例,帮助开发者掌握构建高可用微服务系统的关键技术,提高系统的可扩展性与维护效率。

3

2026.03.11

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
最新Python教程 从入门到精通
最新Python教程 从入门到精通

共4课时 | 22.5万人学习

Django 教程
Django 教程

共28课时 | 4.9万人学习

SciPy 教程
SciPy 教程

共10课时 | 1.9万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号