Django项目创建

安装

复制代码
pip install django

创建项目

首先打开powershell打开项目与创建到的文件夹

复制代码
django-admin startproject django_demo01
django-admin startproject 项目名

多出了一个django_demo01的文件夹,这就是我们的项目了

打开项目文件夹,发现一个文件和一个文件夹

manage.py和django_demo01

打开django_demo01,发现如下

  • manage.py 一个让你用各种方式管理 Django 项目的命令行工具,不要动
  • init.py 一个空文件,代表这是一个项目
  • settings.py 项目的配置文件,有关于数据库、编码、时区等
  • urls.py 项目的 url路由配置,即url路由与其函数的对应配置
  • wsgi.py :作为你的项目的运行在 WSGI 兼容的Web服务器上的入口
  • asgi.py :作为你的项目的运行在 ASGI 兼容的 Web 服务器上的入口

启动项目

打开命令行

复制代码
python manage.py runserver
命令后可以添加网址,端口号等参数

访问127.0.0.1:8000,进入一个页面代表项目创建成功。

创建模块

在powershell下输入如下指令

复制代码
python  manage.py  startapp  模块名

即可新建一个模块,内有如下文件

模块创建好后要注册模块,打开setting.py,找到INSTALLED_APPS,在最后添加模块名即可。我们的模块名叫hello,如下:

创建视图

打开新建的模块,找到views.py文件,新建一个函数

python 复制代码
from django.http import HttpResponse
def hello_world(request):
    return HttpResponse("Hello World!")

这样一个视图就完成了 ,访问此函数需要从浏览器访问

编辑路由

打开urls(和setting同级目录),

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

from hello.views import hello_world

urlpatterns = [
    path('admin/', admin.site.urls),        # 参数1浏览器匹配字符串,参数2调用模块函数
    path('hello/', hello_world),
]

多级路由

url地址分成不同级别,优点地址目录结构清晰,便于维护 。高内聚低耦合,修改某模块其它模块不会受到影响。

python 复制代码
from django.contrib import admin
from django.urls import path, include
from hello.views import hello_world, hello_china  # 引入模块函数

urlpatterns = [
    path('admin/', admin.site.urls),        # 参数1浏览器匹配字符串,参数2调用模块函数
    path('hello/', include("hello.urls")),  # 进入二级导航    hello是模块名
]

进入模块,新建一个urls.py 文件,写法和主项目中相同

在pycharm中一眼就能看出他的访问目录会多出一级

解析网址中的参数

在配置路由的时候可以有如下写法

python 复制代码
path('article/<int:month>', article_list, name='article_list'),

<int:month>就代表了一个int类型的变量,叫month

它对应的视图也应该接收这个变量

python 复制代码
def article_list(request, month):
    return HttpResponse(f"article{month}")

接收get请求中的参数

若发起请求时url中带有参数:url?name=qwe可以有如下方式接收

python 复制代码
def search(request):
    name = request.GET.get("name", "")
    print(name)
    return HttpResponse("search success")

应用模版文件

可以将一个页面写为模版,如个人信息页,只要将模版和个人信息组合就可以组成一个完整页面了

python 复制代码
from django.shortcuts import render
def render_str(request):
    return render(request,"index.html")

这里的index.html是模版文件,render函数的作用就是将模版和数据组合,这个实例中还没有数据

未完,后续移步下篇文章

相关推荐
MC丶科5 小时前
【SpringBoot常见报错与解决方案】中文乱码?Spring Boot 统一解决前后端中文乱码问题(含 Postman 测试)!别再百度“加 UTF-8”了!
spring boot·后端·postman
程序员:钧念6 小时前
深度学习与强化学习的区别
人工智能·python·深度学习·算法·transformer·rag
数据与后端架构提升之路7 小时前
TeleTron 源码揭秘:如何用适配器模式“无缝魔改” Megatron-Core?
人工智能·python·适配器模式
hele_two8 小时前
快速幂算法
c++·python·算法
l1t8 小时前
利用DeepSeek将python DLX求解数独程序格式化并改成3.x版本
开发语言·python·算法·数独
XXOOXRT9 小时前
基于SpringBoot的加法计算器
java·spring boot·后端·html5
moxiaoran575310 小时前
Go语言的错误处理
开发语言·后端·golang
Cemtery11610 小时前
Day26 常见的降维算法
人工智能·python·算法·机器学习
星空椰11 小时前
快速掌握FastAPI:高效构建Web API
python·fastapi