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/

相关推荐
i220818 Faiz Ul4 小时前
计算机毕业设计|基于springboot + vue鲜花商城系统(源码+数据库+文档)
数据库·vue.js·spring boot·后端·课程设计
哈里谢顿4 小时前
Django 应用 OOM(Out of Memory)故障的定位思路和排查方法
python·django
不能放弃治疗4 小时前
聊聊大模型开发的发展历程
后端
甄心爱学习5 小时前
【python】获取所有长度为 k 的二进制字符串
python·算法
福大大架构师每日一题5 小时前
go-zero v1.10.0发布!全面支持Go 1.23、MCP SDK迁移、性能与稳定性双提升
开发语言·后端·golang
学习是生活的调味剂5 小时前
spring bean循环依赖问题分析
java·后端·spring
期待のcode5 小时前
SpringBoot连接Redis
spring boot·redis·后端
tuotali20266 小时前
氢气压缩机技术规范亲测案例分享
人工智能·python
嫂子的姐夫6 小时前
030-扣代码:湖北图书馆登录
爬虫·python·逆向
a1117766 小时前
EasyVtuber(或其衍生/增强版本)的虚拟主播(Vtuber)面部动画生成与直播解决方案
python·虚拟主播