Django入门

Django是一个用Python编写的高级Web框架,它允许快速开发安全和维护性高的网站。

安装Django

检查Python版本 :Django需要Python环境。Django 3.x官方支持Python 3.6至3.10,而更新版本的Django可能支持更新的Python版本。可以使用python --versionpython3 --version命令来检查Python版本。

安装Django :打开命令行或终端,输入pip install django命令来安装Django。安装完成后,可以通过运行django-admin --version命令来验证Django是否成功安装。

使用Django

创建Django项目

使用django-admin工具创建一个新的Django项目。在命令行或终端中,导航到想要创建项目的目录,然后输入django-admin startproject myproject命令(将myproject替换为想要的项目名称)。

这将创建一个名为myproject的新目录,其中包含Django项目的基础结构,如manage.py文件和各种配置文件。

启动开发服务器

使用cd命令进入刚创建的项目目录。

输入python manage.py runserver命令来启动Django的开发服务器。默认情况下,服务器会运行在localhost8000端口上。

可以在浏览器中访问http://127.0.0.1:8000/来查看Django项目。

项目结构

在Django中,一个项目可以包含多个应用程序。每个应用程序都是一个独立的模块,用于处理特定的功能或业务逻辑。应用程序目录通常包含以下文件和目录:

  1. migrations 目录:用于存放数据库迁移文件,这些文件记录了数据库模型的变更历史。

  2. init.py:这是一个空文件,用于标识该目录是一个Python包。

  3. admin.py:用于配置Django管理后台。

  4. apps.py:应用的配置文件。

  5. models.py:用于定义数据库模型。

  6. tests.py:用于编写测试用例。

  7. urls.py:应用的URL路由配置文件。

  8. views.py:用于定义视图函数,这些函数处理用户的请求并返回响应。

  9. templates 目录:用于存放HTML模板文件。

  10. static 目录:用于存放静态文件,如CSS、JavaScript、图片等。

项目级URL配置

Django项目的URL配置通常位于项目同名文件夹下的urls.py文件中。这个文件包含了项目的根URL模式。

复制代码
# myproject/urls.py  
  
from django.contrib import admin  
from django.urls import path, include  
  
urlpatterns = [  
    path('admin/', admin.site.urls),  # Django管理后台的URL  
    path('', include('myapp.urls')),  # 包含应用程序的URL配置  
]

模块级URL配置

复制代码
# myapp/urls.py  
  
from django.urls import path  
from . import views  
  
urlpatterns = [  
    path('', views.home, name='home'),  # 根URL映射到home视图  
    path('about/', views.about, name='about'),  # /about/ URL映射到about视图  
]

视图函数

复制代码
# myapp/views.py  
  
from django.http import HttpResponse  
  
def home(request):  
    return HttpResponse("Welcome to the home page!")  
  
def about(request):  
    return HttpResponse("This is the about page.")
相关推荐
LitchiCheng5 分钟前
Mujoco 检验 KDL 和 Pinocchio 运动学 FK 是否一致
人工智能·python
ZhengEnCi8 分钟前
P3H1-Python-sys模块完全指南-系统参数与命令行参数处理利器
python
猫头虎9 分钟前
如何解决pip install网络报错SSLError: TLSV1_ALERT_PROTOCOL_VERSION(OpenSSL过旧)问题
网络·python·scrapy·pycharm·beautifulsoup·pip·scipy
帮帮志11 分钟前
05【AI大模型对话/创建项目】通过pycharm创建大模型项目,关联Anaconda环境
ide·人工智能·python·语言模型·pycharm
海边夕阳200612 分钟前
【每天一个AI小知识】:什么是目标检测?
人工智能·python·深度学习·目标检测·机器学习·计算机视觉·目标跟踪
咖啡の猫14 分钟前
Python分支结构
服务器·网络·python
Blossom.11826 分钟前
基于Mamba-2的实时销量预测系统:如何用选择性状态空间干掉Transformer的O(n²)噩梦
人工智能·python·深度学习·react.js·机器学习·设计模式·transformer
Wise玩转AI28 分钟前
Day 26|智能体的“伦理与安全边界”
人工智能·python·安全·ai·chatgpt·ai智能体
梦里不知身是客1136 分钟前
帆软的图标类型介绍
python·信息可视化·数据分析
h***381836 分钟前
使用python进行PostgreSQL 数据库连接
数据库·python·postgresql