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 或在代码中进行重定向等操作非常有用。

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

相关推荐
2601_9563198816 分钟前
2026年零基础学量化:从看懂示例到写清条件和动作
人工智能·python
知无不研23 分钟前
lambda表达式的使用(3)
开发语言·c++·lambda
何事误红尘35 分钟前
Mqtt学习笔记(一):Mosquitto服务器搭建、MQTTX安装测试
学习
过期的秋刀鱼!37 分钟前
LangChain-D1-模型的工作流程
人工智能·python·langchain
萤火工厂目视化设计1 小时前
智能制造与企业文化目视化浪潮下:中小工厂的机遇与挑战
python·制造
cfm_29141 小时前
SpringAI + Ollama 本地大模型
java·开发语言·人工智能·语言模型
青山是哪个青山1 小时前
LangChain 学习笔记(三):LangSmith 调试与监控
笔记·学习·langchain
DeepVisionary2 小时前
从GPT-5.6 Sol的Ultrafast模式看推理速度竞赛:750 token/秒背后,Cerebras的晶圆级生意
python·自动化
IT_陈寒2 小时前
Python的GIL让我多写了500行代码
前端·人工智能·后端
C++ 老炮儿的技术栈2 小时前
基于Qt实现轻量化本地音乐播放器
开发语言·c++·qt·c·播放器·音乐