当前位置: 首页 > news >正文

Django 零基础起步:开发你的网站第一步

前言

Django 是 Python 生态中最强大的全栈 Web 框架之一。本篇是写给零基础新手的入门指南,带你快速搭建一个可运行的网站骨架。

一、Django 了解

Django 是一个“电池齐全”的 Web 框架:

  • 内置 ORM、模板引擎、后台管理、用户系统

  • 支持 MVC 架构(Django 叫 MTV:Model-Template-View)

  • 高度可扩展,适合中大型网站开发

如果 Flask 是一把瑞士军刀,Django 就是一整套工具箱。

二、安装创建项目

安装

pip install django

创建项目和应用

django-admin startproject mysite
cd mysite
python manage.py startapp blog

项目结构:

在这里插入图片描述

三、开始写页面:

修改视图

blog/views.py

from django.http import HttpResponsedef hello(request):return HttpResponse("你好,Django!")

配置路由

blog/urls.py

from django.urls import path
from . import viewsurlpatterns = [path('', views.hello),
]

再修改 mysite/urls.py 引入 app:

from django.contrib import admin
from django.urls import path, includeurlpatterns = [path('admin/', admin.site.urls),path('', include('blog.urls')),
]

启动服务

python manage.py runserver

访问:http://127.0.0.1:8000

在这里插入图片描述

四、使用模板引擎展示页面

创建模板文件

blog/templates/blog/index.html

<!DOCTYPE html>
<html>
<head><title>{{ title }}</title></head>
<body><h1>{{ title }}</h1><p>欢迎来到 Django 网站!</p>
</body>
</html>

修改视图函数

from django.shortcuts import renderdef home(request):return render(request, 'blog/index.html', {'title': '首页'})

修改路由指向 home

urlpatterns = [path('', views.home),
]

五、模型 Model + ORM 示例

创建模型

blog/models.py

from django.db import modelsclass Article(models.Model):title = models.CharField(max_length=100)content = models.TextField()created_at = models.DateTimeField(auto_now_add=True)

激活模型

python manage.py makemigrations
python manage.py migrate

添加后台管理

from django.contrib import admin
from .models import Articleadmin.site.register(Article)

创建后台用户:

python manage.py createsuperuser

访问:http://127.0.0.1:8000/admin/
在这里插入图片描述
登陆后:
在这里插入图片描述
也可以在这里修改用户信息
在这里插入图片描述

六、总结

优点局限
功能齐全、规范成熟上手较慢,结构复杂
自带 ORM + 管理后台配置项较多,新手容易迷路
适合中大型网站/平台开发不适合极简 API 或微服务

一句话总结: Django 是构建专业级网站的全能框架,是企业项目和全栈开发者的理想选择。

七、参考

《Python 前端框架/工具合集》
在这里插入图片描述

http://www.lryc.cn/news/575535.html

相关文章:

  • 供应链管理:供应链计划主要计算公式/方法
  • 独立开发还能做吗
  • 用户统计-01.需求分析和设计
  • 机器学习基础:概念、算法与实践入门
  • 酒店智能门锁系统常见问题解决方法——东方仙盟
  • MyBatis-Plus - 条件构造器Wrapper
  • Socket 编程 TCP
  • Linux 和 Windows 服务器:哪一个更适合您的业务需求?
  • 通信网络编程4.0——JAVA
  • Java+LangChain实战入门:深度剖析开发大语言模型应用!
  • ArrayList和LinkedList详解
  • WPF 实现自定义弹窗输入功能
  • Spring Boot 项目中同时使用 Swagger 和 Javadoc 的完整指南
  • Redis核心知识详解:从全局命令到高级数据结构
  • 数据结构-第二节-堆栈与队列
  • python打卡day56@浙大疏锦行
  • 学习昇腾开发的第9天--在Ubuntu下安装ffmpeg4.2.11
  • php项目部署----------酒店项目
  • Docker数据管理——AI教你学Docker
  • Redis-set集合
  • C++ 第三阶段:语言改进 - 第四节:nullptr vs NULL
  • 基于Spring Boot 构建现代化短视频平台:HBC Video全栈开发实战
  • 《高等数学》(同济大学·第7版)第九章 多元函数微分法及其应用第二节偏导数
  • 信创国产化替代中的开发语言选择分析
  • Java 大视界 -- Java 大数据机器学习模型在卫星通信信号干扰检测与智能抗干扰中的应用(323)
  • uniapp事件onLoad区分大小写
  • JVM调优实战 Day 7:JVM线程分析与死锁排查
  • 《汇编语言:基于X86处理器》第5章 过程(1)
  • DSP学习笔记1
  • ISP Pipeline(4): Anti Aliasing Noise Filter 抗锯齿与降噪滤波器