Django 学习教程- Hello world入门案例

系列

Django 学习教程-介绍与安装-CSDN博客

欢迎来到第Djagno学习教程第二章Hello World 入门案例。

在本教程中,我将引导您完成django的Hello World入门案例。

让我们开始吧!

版本

  • Django 5.0
  • Python 3.10 +

创建项目

安装 Django 之后,您现在应该已经有了可用的管理工具 django-admin,使用 django-admin 创建 hellodworld 项目:

复制代码
django-admin startproject helloworld

让我们看看创建的项目的目录结构:

复制代码
helloworld/
    manage.py
    helloworld/
        __init__.py
        settings.py
        urls.py
        asgi.py
        wsgi.py
  • HelloWorld: 项目的容器。
  • manage.py: 一个实用的命令行工具,可让你以各种方式与该 Django 项目进行交互。
  • HelloWorld/init.py: 一个空文件,告诉 Python 该目录是一个 Python 包。
  • HelloWorld/asgi.py: 一个 ASGI 兼容的 Web 服务器的入口,以便运行你的项目。
  • HelloWorld/settings.py: 该 Django 项目的设置/配置。
  • HelloWorld/urls.py: 该 Django 项目的 URL 声明; 一份由 Django 驱动的网站"目录"。
  • HelloWorld/wsgi.py: 一个 WSGI 兼容的 Web 服务器的入口,以便运行你的项目。

启动 mysite 项目

复制代码
python manage.py runserver

您将在命令行上看到以下输出:

Performing system checks...

System check identified no issues (0 silenced).

You have 18 unapplied migration(s). Your project may not work properly until you apply the migrations for app(s): admin, auth, contenttypes, sessions.

Run 'python manage.py migrate' to apply them.

December 30, 2023 - 13:29:36

Django version 5.0, using settings 'helloworld.settings'

Starting development server at http://127.0.0.1:8000/

Quit the server with CTRL-BREAK.

注意:You have 18 unapplied migration(s). Your project may not work properly until you apply the migrations for app(s): admin, auth, contenttypes, sessions.

这个提示暂时忽略,跟数据库相关,后面会结合数据库使用。

现在服务器已运行,请使用 Web 浏览器访问 http://127.0.0.1:8000/您会看到"恭喜!" 页面,火箭起飞。有效!

更改端口

默认情况下,该runserver命令在内部 IP 的端口 8000 上启动开发服务器。

如果要更改服务器的端口,请将其作为命令行参数传递。例如,此命令在端口 8080 上启动服务器:

复制代码
python manage.py runserver 8080

如果要更改服务器的 IP,请将其与端口一起传递。例如,要监听所有可用的公共 IP(如果您正在运行 Vagrant 或想要在网络上的其他计算机上展示您的工作,这很有用),请使用:

复制代码
python manage.py runserver 0.0.0.0:8000

入门案例

视图和 URL 配置

在创建的 helloworld/helloworld 目录新建一个 views.py 文件,并放入如下代码:

helloworld/helloworld/views.py

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

接着,绑定 URL 与视图函数。打开 urls.py 文件,将以下代码放入 urls.py 文件中:

helloworld/HelloWorld/urls.py

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

完成后,启动 Django 开发服务器,并在浏览器访问 http://127.0.0.1:8000/hello/

**注意:**项目中如果代码有改动,服务器会自动监测代码的改动并自动重新载入,所以如果你已经启动了服务器则不需手动重启。

path() 函数

Django path() 可以接收四个参数,分别是两个必选参数:route、view 和两个可选参数:kwargs、name。

语法格式:

复制代码
path(route, view, kwargs=None, name=None)
  • route: 字符串,定义 URL 的路径部分。可以包含变量,例如 <int:my_variable>,以从 URL 中捕获参数并将其传递给视图函数。

  • view: 视图函数,处理与给定路由匹配的请求。可以是一个函数或一个基于类的视图。

  • kwargs(可选): 一个字典,包含传递给视图函数的额外关键字参数。

  • name(可选): 为 URL 路由指定一个唯一的名称,以便在代码的其他地方引用它。这对于在模板中生成 URL 或在代码中进行重定向等操作非常有用。

恭喜您,完成了入门案例!

相关推荐
andrsted10 分钟前
用练题簿小程序 - 让错题不再白错
学习·微信小程序·小程序·学习方法
2601_9499506317 分钟前
练题簿,把培训从“走过场”变成“真落地”
人工智能·学习·小程序·刷题·小程序推荐
君顾13 小时前
智慧零售实战指南:从技术架构到落地方案全解析
java·开发语言·零售
南棱笑笑生3 小时前
20260904实测给飞凌OK3576-C开发板刷入Rockchip原厂的IMG固件【使用飞凌的DTS】切换串口波特率为1.5Mbps
c语言·开发语言·rockchip
问天_观心4 小时前
大模型微调学习(二)
人工智能·python·深度学习·学习·语言模型·transformer
洋洋不叫杨杨4 小时前
揭秘当下知名的SEO优化渠道,你知道几个?
大数据·python
阿童木写作4 小时前
跨境图片翻译工具推荐:批量处理视频字幕与智能抠图
python·音视频
指掀涛澜天下惊4 小时前
强化学习进阶篇八 策略梯度算法
深度学习·学习·算法·强化学习
平头哥技术团队4 小时前
Day 10 | 工欲善其事:VS Code 配置与项目归档
android·开发语言·前端·javascript·html·交互
乌萨奇也要立志学C++4 小时前
【洛谷】kmp算法
开发语言·算法