Django项目搭建

一、创建项目

在命令行中执行代码

python 复制代码
$ django-admin startproject mysite
  • django-admin 为内部命令
  • startproject 为参数
  • mysite 项目名

备注

避免使用 Python 或 Django 的内部保留字来命名项目。比如说,避免使用像 django (会和 Django 自己产生冲突)或 test (会和 Python 的内置组件产生冲突)这样的名字

二、项目结构

python 复制代码
mysite/ # 项目的名称
   manage.py # 管理 Django 项目的命令行工具,启动和结束等
   mysite/ # 项目主应用,它是一个Python包
     __init__.py # 一个空文件,告诉Python这个目录是一个Python包
     settings.py # 项目的配置文件,有关于数据库、编码、时区等
     urls.py # 项目的 url路由配置,即url路由与其函数的对应配置
     wsgi.py # 用于项目与WSGI兼容的Web服务器入口,用于项目部署

三、启动项目

  • 命令行窗口中,进入最外层的mysite

  • 运行命令

  • 查看运行日志

python 复制代码
F:\django_study\first_pro>python manage.py runserver
Watching for file changes with StatReloader
Performing system checks...


System check identified no issues (0 silenced).


You have 17 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.
Django version 4.1.1, using settings 'mysite.settings'
Starting development server at http://127.0.0.1:8000/
Quit the server with CTRL-BREAK

四、第一个Django程序

  • 了解请求流程
  • 创建一个子应用

    python 复制代码
    $ python  manage.py  startapp  myapp01
  • 修改settings.py配置

    python 复制代码
    INSTALLED_APPS = [
      'django.contrib.admin',
      'django.contrib.auth',
      'django.contrib.contenttypes',
      'django.contrib.sessions',
      'django.contrib.messages',
      'django.contrib.staticfiles', 
      'myapp01' # 子应用必须配置,否则不起作用
    ]
  • 修改urls.py配置

    python 复制代码
    from first_app import views
    
    
    urlpatterns = [
      path('admin/', admin.site.urls),
      path('test/',views.first_test),
    ]
  • 修改views.py配置

    python 复制代码
    from django.http import HttpResponse
    
    
    # Create your views here.
    def first_test(request):
      print('第一个Django项目views')
      return HttpResponse('Django项目第一次请求成功')
  • 浏览器访问结果 http://localhost:8000/test/

相关推荐
张不才11 小时前
一个静默吞数据的时间戳陷阱
后端
李少兄11 小时前
从原理到实战:Spring IoC/DI 核心知识体系与高频面试题全解
java·后端·spring
ServBay11 小时前
ServBay 1.30.0 更新:双平台引入 MCP 服务,AI 编程助手成为全栈本地运维
后端·ai编程
码云骑士11 小时前
32-慢查询排查全流程(下)-索引优化实战与最左前缀原则
python
张不才11 小时前
分页查出来的数据总少几条?可能是 MyBatis 后置过滤的坑
后端
Windeal11 小时前
Agent ToolCall 循环怎么定制?PI Extension 与 DeepAgents Middleware 两条岔路深度对比
后端·openai
鱼人11 小时前
targets 包实战:R 语言数据分析流水线自动化管理方案
后端
时雨__11 小时前
一文搞懂 Python 并发:GIL、多线程/多进程/协程怎么选
后端
Anson43211 小时前
Dubbo架构深度分析
后端
站大爷IP11 小时前
global和nonlocal到底有什么区别?
后端