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函数的作用就是将模版和数据组合,这个实例中还没有数据

未完,后续移步下篇文章

相关推荐
runfarther1 分钟前
搭建LLaMA-Factory环境
linux·运维·服务器·python·自然语言处理·ai编程·llama-factory
csxin11 分钟前
Spring Boot 中如何设置 serializer 的 TimeZone
java·后端
@半良人20 分钟前
Deepseek+python自动生成禅道测试用例
开发语言·python·测试用例
铁锚31 分钟前
在MAC环境中安装unsloth
人工智能·python·macos·语言模型
荔枝爱编程32 分钟前
如何在 Docker 容器中使用 Arthas 监控 Java 应用
java·后端·docker
高松燈36 分钟前
kafka入门和核心概念介绍
后端
喵手39 分钟前
Java中Stream与集合框架的差异:如何通过Stream提升效率!
java·后端·java ee
喵手1 小时前
你知道,如何使用Java的多线程机制优化高并发应用吗?
java·后端·java ee
青梅主码1 小时前
坐标差 1 公分,返工一整天?试试这个转换窍门
后端
cxyxiaokui0011 小时前
别让你的Java对象在内存里躺平!序列化带它看世界
后端·面试