当前位置: 首页 > ds >正文

首次创建Django项目初始化

 1. 创建虚拟环境

例如创建虚拟环境为rebort

python3.6 -m venv test/rebort

2. 安装Django

sudo -i
cd test/rebort/bin/
source ./activate
pip install Django

如果是在wingows上安装,同时适用

  • 默认安装会,会在python的安装目前下生成了两个文件
  • 在lib目录下会生成一个diango,这个问就是diango的源代码目录,同时在Scrips下会有一个diamgo-admin.exe(工具,自动将项目做需要的文件夹自动进行创建好)
  • 那么接下来打开dos窗口进行安装diango
  • 安装完成后可以在Python的目录下看到安装的包和程序

3. 创建项目

例如创建项目为django-rebort

以下命令为固定写法,后面跟上自己想要创建的项目名称即可

python django-admin.py startproject django-rebort

或者直接IDE进行创建,当然这里需要专业版本的IDE才可以,不过这种命令行方式也是一样的,这样创建的项目是完整标准的django项目

当不能正常执行上面的命令时,可以把django-admin.py的全路径写出来,例如:

python test-django/rebort/bin/django-admin.py startproject django-rebort

或者你也可以使用下面命令的这种方式

django-admin startproject django-rebort

这样就可以正常创建了

4. 配置setting.py

4.1 数据库配置
当然在此之前,你要建立好数据库,命令如下:

CREATE DATABASE `数据库名称` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;

然后通过我们饿IED工具打开我们创建的django项目,在django项目下的setting.py文件下,找到如下填写数据库的位置,填写我们的连接数据库相关字段,django项目已经生成了模版,我们不需要做任何操作,只需要填写自己数据库的连接地址,用户名密码,数据库名即可,如下中文标识部分

# setting.py
# DATABASES = {
#     'default': {
#         'ENGINE': 'django.db.backends.sqlite3',
#         'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),
#     }
# }
DATABASES = {'default': {'ENGINE': 'django.db.backends.mysql','NAME': '数据库名称','USER': '使用者','PASSWORD': '数据库密码','HOST': '127.0.0.1',}
}

设置以上信息后,我们还需要安装连接数据库的依赖库

 pip install pymysql 

同时在Django项目中的__init__.py中引用:,当然这里你也可以直接在默认的setting.py文件中直接导入,效果是一样的

import pymysql
pymysql.install_as_MySQLdb()

4.2 设置一下我们的语言,时区等信息

# setting.py
# LANGUAGE_CODE = 'en-us'
#
# TIME_ZONE = 'UTC'
#
# USE_I18N = True
#
# USE_L10N = True
#
# USE_TZ = TrueLANGUAGE_CODE = 'zh-Hans'TIME_ZONE = 'Asia/Shanghai'USE_I18N = TrueUSE_L10N = TrueUSE_TZ = False

4.3设置一下静态路径

# setting.py
# STATIC_URL = '/static/'
STATIC_URL = '/static/'
STATIC_ROOT = os.path.join(BASE_DIR, 'static')
MEDIA_ROOT = os.path.join(BASE_DIR, 'media')
STATICFILES_FINDERS = ('django.contrib.staticfiles.finders.FileSystemFinder','django.contrib.staticfiles.finders.AppDirectoriesFinder',
)

4.4创建项目APP,APP主要用于后期我们接口开发的一个全局,后续基本都在里面进行接口的开发

例如这里我创建一个APP名字叫rebort-app

cd 项目目录
python manage.py startapp rebort-app

app集合

项目中新建apps与extra_apps文件夹,apps存放自己创建的app,extra_apps存放第三方app。

# setting.py
# 修改setting.py文件中13-17行
import os
import sys# Build paths inside the project like this: os.path.join(BASE_DIR, ...)
BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
sys.path.insert(0, os.path.join(BASE_DIR, 'apps'))
sys.path.insert(0, os.path.join(BASE_DIR, 'extra_apps'))

最后别忘记了自己创建项目APP后,需要把app添加到INSTALLED_APPS,不然是项目是没办法运行的

最后你可以检查运行一下django项目是不是可以正常的进行运行

python manage.py runserver

如果可以正确启动运行,那么项目没问题了,在运行过程中,你可能会遇到需要安装一些依赖,下面依赖可以直接先安装

Pip install mysqlclient
Pip install pymysql
pip install django-smart-selects
Pip install Celery
Pip install requests下面是初始化生成数据库表和迁移文件的
python manage.py makemigrations
Python manage.py migrate

django创建超级管理员登录默认的django后台管理系统

python manage.py createsuperuser

执行这个命令后,系统会提示你输入一些信息来创建用户,包括:

  • Username (leave blank to use 'username'): 输入你希望设置的用户名。如果不输入,将使用当前目录的名字。

  • Email address: 输入用户的电子邮件地址。

  • Password: 输入并确认用户的密码。

例如:

python manage.py createsuperuser
Username (leave blank to use 'admin'): admin
Email address: admin@example.com
Password: ***********
Password (again): ***********
Superuser created successfully.

3. 访问Django Admin界面

一旦你创建了超级用户,你可以通过访问http://127.0.0.1:8000/admin/(默认情况下)来登录Django的后台管理界面。使用你刚刚创建的超级用户的用户名和密码登录。

4. 确保你的项目可以访问Admin界面

确保你的urls.py文件中已经包含了admin的URL配置:

from django.contrib import admin
from django.urls import path, includeurlpatterns = [path('admin/', admin.site.urls),# 其他URL配置...
]

5. 启动开发服务器

如果你还没有启动开发服务器,可以通过以下命令来启动:

python manage.py runserver

这样,你就可以通过浏览器访问http://127.0.0.1:8000/admin/来管理你的Django项目了。

http://www.xdnf.cn/news/19179.html

相关文章:

  • 沙箱操作工具
  • 计算机组成原理3-3-1:无符号数乘法运算的硬件逻辑实现
  • 学习做动画6.瞄准偏移
  • JavaScript初识:给小白的第一堂编程课
  • 大数据毕业设计选题推荐-基于大数据的痴呆症预测数据可视化分析系统-Spark-Hadoop-Bigdata
  • openEuler常用操作指令
  • AT_abc407_e [ABC407E] Most Valuable Parentheses
  • 客户案例 | 国际知名内衣品牌x甄知科技,领航IT服务新征程
  • 算法题打卡力扣第15题:三数之和(mid)
  • 用 PyTorch 搭建 CNN 实现 MNIST 手写数字识别
  • QT:【第一个QT程序】【信号和槽】
  • 2025通用证书研究:方法论、岗位映射与四证对比
  • 腾讯云重保流程详解:从预案到复盘的全周期安全防护
  • 【练习九】Java实现加油站支付小程序:存款与消费
  • 大数据原生集群 (Hadoop3.X为核心) 本地测试环境搭建三
  • Unity游戏打包——Android打包环境(Mac下)
  • 0828 C++基础
  • PhotoshopImageGenerator:基于Photoshop的自动化图像数据集生成工具
  • BGP路由协议(一):基本概念
  • 每日五个pyecharts可视化图表日历图和箱线图:从入门到精通
  • 基于matplotlib库的python可视化:以北京市各区降雨量为例
  • 【开题答辩全过程】以 基于Spring Boot农产品运输服务平台为例,包含答辩的问题和答案
  • [论文阅读] 人工智能 + 软件工程 | 告别“隐藏陷阱”:领域预训练模型SmartBERT如何赋能智能合约安全
  • LoRA modules_to_save解析及卸载适配器(62)
  • 怎样将Word转成高质量的DITA
  • 构建AI智能体:十六、构建本地化AI应用:基于ModelScope与向量数据库的文本向量化
  • RGW层Op的组织
  • 【大前端】React Native(RN)跨端的原理
  • Day16_【机器学习—模型拟合问题】
  • 【MySQL 为什么默认会给 id 建索引? MySQL 主键索引 = 聚簇索引?】