django——创建 Django 项目和 APP

2.创建 Django 项目和 APP

命令

  • 创建Django项目
    • django-admin startproject name
  • 创建子应用

2.1 创建工程

在使用Flask框架时,项目工程目录的组织与创建是需要我们自己手动创建完成的。

在django中,项目工程目录可以借助django提供的命令帮助我们创建。

2.1.1 创建

创建工程的命令为:

复制代码
django-admin startproject 工程名称

例如:想要在桌面的source目录中创建一个名为ezfy的项目工程,可执行如下命令:

复制代码
cd ~/Desktop/source
django-admin startproject ezfy

2.2.2 工程目录说明

查看创建的工程目录,结构如下:

  • 与项目同名的目录,此处为ezfy。
  • settings.py是项目的整体配置文件。
  • urls.py是项目的URL配置文件。
  • wsgi.py是项目与WSGI兼容的Web服务器入口。
  • manage.py是项目管理文件,通过它管理项目。

2.2.3 运行内置开发服务器

在开发阶段,django提供了一个纯python编写的轻量级web服务器,仅在开发阶段使用。

运行服务器命令如下:

shell 复制代码
python manage.py runserver ip:端口
或:
python manage.py runserver

2.3 新建应用

2.3.1 同级目录建立应用

  1. 安装 django

    shell 复制代码
    pip install django==4.2
  2. 创建项目

    shell 复制代码
    django-admin startproject ezfy

    其中 ezfy 指的是你的项目名字(projectname) ,目录如图

  3. 新建一个demo应用

    shell 复制代码
    django-admin startapp demo
  4. 创建完成后,需要到与工程名相同的文件夹下(这里是ezfy)的 settings.py 中INSTALLED_APPS进行注册。

    注册名方式1:

    注册名方式2:直接与应用名字相同

2.3.2 在目录下新建应用步骤

很多时候在同级目录下新建应用会造成文件夹众多,一般在apps包下开发多种应用,也就是集中将应用放在一个包下,这里做个演示。

  1. 安装 django

    shell 复制代码
    pip install django==4.2
  2. 创建项目

    shell 复制代码
    django-admin startproject ezfy

    其中 ezfy 指的是你的项目名字(projectname) ,目录如图

  3. 创建 app

    在指定路径下创建 app:

    新建一个apps包:

    • 先 cd 到指定路径apps
    shell 复制代码
    cd .\apps\
    • 运行
    shell 复制代码
    django-admin startapp users  

    其中 users 指的是你的应用名字,apps文件夹下回出现users文件夹

    创建完成后,需要到与工程名相同的文件夹下(这里是ezfy)的 settings.py 中INSTALLED_APPS进行注册。一定要注册!

    • 打开 apps 下users下的 apps.py文件,修改为对应的apps.users.
    • 将 name 变量赋值修改
    • 迁移应用
    • 运行

参考

DataWhale开源人工智能社区
DataWhale-Sweettalk-Django4.2

相关推荐
理想三旬1 小时前
关系数据库
数据库
无心水3 小时前
【分布式利器:RocketMQ】2、RocketMQ消息重复?3种幂等方案,彻底解决重复消费(附代码实操)
网络·数据库·rocketmq·java面试·消息幂等·重复消费·分布式利器
q***98524 小时前
基于人脸识别和 MySQL 的考勤管理系统实现
数据库·mysql
l1t4 小时前
用SQL求解advent of code 2024年23题
数据库·sql·算法
办公解码器5 小时前
Excel工作表打开一次后自动销毁文件,回收站中都找不到
数据库·excel
爬山算法6 小时前
Redis(127)Redis的内部数据结构是什么?
数据结构·数据库·redis
应用市场6 小时前
Qt QTreeView深度解析:从原理到实战应用
开发语言·数据库·qt
q***96586 小时前
Spring Data JDBC 详解
java·数据库·spring
Q_Q5110082857 小时前
python+django/flask的宠物用品系统vue
spring boot·python·django·flask·node.js·php
Hello,C++!7 小时前
linux下libcurl的https简单例子
linux·数据库·https