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

相关推荐
2301_7735536219 小时前
Tailwind CSS如何实现固定定位布局_使用fixed与z-index控制CSS层级
jvm·数据库·python
2301_8148098619 小时前
Bootstrap 5中浮动标签(Floating Labels)怎么用?
jvm·数据库·python
解救女汉子19 小时前
如何处理SQL存储过程大数据导入_利用数据泵或外部表
jvm·数据库·python
二月十六19 小时前
SQL Server 2022 新特性:APPROX_PERCENTILE_CONT 与 APPROX_PERCENTILE_DISC 近似百分位数详解
数据库·sqlserver
qq_3729069319 小时前
HTML函数在系统字体渲染模糊是硬件问题吗_显示输出链路排查【方法】
jvm·数据库·python
Polar__Star19 小时前
如何在 PHP 包含文件中动态排除特定页面的导航项
jvm·数据库·python
2301_8135995519 小时前
Go语言怎么嵌套结构体_Go语言结构体嵌套教程【深入】
jvm·数据库·python
瀚高PG实验室19 小时前
pgvector 安装及使用示例
数据库·瀚高数据库
披着羊皮不是狼19 小时前
(9)批量生成文章并同步存入 MySQL 和 Redis
数据库·redis·mysql
2401_8877245019 小时前
Pandas 中使用交叉表为分类列生成计数型宽表结构
jvm·数据库·python