【Django】创建应用

【Django】创建项目、创建应用

01_创建项目

简单了解了Django框架,现在我们开始创建一个Django项目,这里我们使用的是PyCharm,打开Pycharm创建我们第一个Django项目,如下图所示:

这里我们选择了Project venv,表示在项目创建虚拟环境,大家可以根据需求选择Base conda或Custom environment,点击create后,如下图所示:

可以发现pycharm为我们创建了很多文件,在Django文件夹中:

  • --init--.py:初始化配置文件,暂无内容;
  • settings.py:Django项目配置文件,主要定义所引用的组件、项目名、数据库、静态资源等等;
  • urls.py:维护项目的URL路由映射,即定义客户端访问时由哪个模块进行响应;
  • wsgi.py:Python服务网关接口,是Python应用与web服务器之间的接口,用于Django项目在服务器上的部署上线,一般不需要修改;
  • asgi.py:定义ASGI的接口信息和WSGI类似,在3.0以后新增ASGI,相比WSGI、ASGI实现了异步处理,用于启动异步通信服务;
  • manage.py:是Django用于管理命令行工具,当进行站点运行,数据库自动生成等都是通过本文件完成;

在user应用文件夹中:

  • migrations:迁移文件夹;
  • --init--.py:初始化配置文件,使得文件夹成为一个包;
  • admin.py:后台管理系统配置文件,当我们用到后台管理系统的时候,需要用到这个文件,管理站点模型的声明文件;
  • apps.py:当前应用配置文件,在其中生成了AppConfig,该类用于定义应用名等数据;
  • models.py:模板文件,添加模型层数据类型;
  • tests.py:测试程序文件;
  • views.py:视图文件,定义URL相应函数;

我们主要用到的文件有settings.pyurls.pymodels.py、views.py文件。

02_运行项目

创建好项目后,我们运行项目,在Terminal终端运行,运行的代码格式如下:

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

当ip和端口都不写时,默认的ip为127.0.0.1,端口为8000

示例代码如下:

复制代码
python manage.py runserver  # 默认
python manage.py runserver 127.0.0.1:5000   # 指定端口

运行结果为:

红框里面的内容简单知道是什么就行了,后面的文章会讲解。点击http://127.0.0.1:8000/,如下图所示:

好了,恭喜你,已经成功创建并运行Django项目了。

03_创建应用

在Flask框架中,创建应用只需右键点击创建包即可,但在Django框架中,需要执行如下代码创建应用:

python 复制代码
python manage.py startapp Product

其中Product为我们的应用名,如下图所示:

这样就成功创建了应用,创建了应用后,需要在settings.py文件中INSTALLED_APPS变量定义应用,示例代码如下:

python 复制代码
INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'Product.apps.ProductConfig',  # 定义应用
]
相关推荐
麦聪聊数据2 分钟前
业务自助取数(下):安全可控前提下,实现取数效率百倍提升
数据库·sql
飞猪~4 分钟前
Langchain python版本 LLM 重要函数invoke,ainvoke,stream,astream,batch,abatch
python·langchain·batch
2501_9157167211 分钟前
Repository-学习指南_小白版
数据库·人工智能
snpgroupcn15 分钟前
SAP实施风险管控注意事项:四大风险域与防范策略
前端·数据库·人工智能
用户67570498850230 分钟前
从失真到绝对精准:Go语言中如何进行高精度计算?
后端·go
沙蒿同学36 分钟前
当古诗词遇上 AI:从 38 万句诗词中取一个好名字
python·算法·架构
cyforkk38 分钟前
MySQL锁机制详解:从乐观锁到悲观锁
数据库·mysql
ShiXZ2131 小时前
指令集-SQL 常用指令速查手册
数据库·sql·mysql·oracle
xxie1237941 小时前
Python装饰器与语法糖
开发语言·python
程序员cxuan1 小时前
GPT-5.6 官宣解禁,明天全量发布!
人工智能·后端·程序员