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/

相关推荐
IT_陈寒12 分钟前
Vue 3.4 性能优化实战:7个被低估的Composition API技巧让你的应用提速30%
前端·人工智能·后端
我命由我1234519 分钟前
Java 开发 - 简单消息队列实现、主题消息队列实现
java·开发语言·后端·算法·java-ee·消息队列·intellij-idea
绝无仅有21 分钟前
电商大厂技术面试:分布式扩展与系统设计问题解析
后端·面试·架构
Victor35632 分钟前
Redis(133)Redis的对象共享机制是什么?
后端
Alang35 分钟前
【LM-PDF】一个大模型时代的 PDF 极速预览方案是如何实现的?
前端·人工智能·后端
Victor35636 分钟前
Redis(132) Redis的对象编码是什么?
后端
绝无仅有36 分钟前
某电商大厂技术面试场景解析
javascript·后端·面试
2501_941111343 小时前
Python上下文管理器(with语句)的原理与实践
jvm·数据库·python
晨非辰3 小时前
【数据结构初阶系列】归并排序全透视:从算法原理全分析到源码实战应用
运维·c语言·数据结构·c++·人工智能·python·深度学习
A尘埃3 小时前
Python后端框架:FastAPI+Django+Flask
python·django·flask·fastapi