一、项目分析:
二、需求分析
三、Git管理代码:
1、创建仓库
2、克隆仓库
3、设置虚拟环境
4、复制前端font代码
在font中打开终端,运行live-server
5、测试前端代码是否可以运行
四、创建工程
django-admin startproject 工程名
 
五、创建子应用:
分析项目的子应用,项目的子应用是创建一个包,专门存放子应用
python manage.py startapp 子应用名
apps---存放django的应用
libs--存放第三方文件
utils--存放项目自己定义的公共函数或类
scripts---用于存放管理脚本文件
 
六、创建数据库
 
create database 数据库名 charset=utf8;
 
为数据库创建数据库用户(不使用root账户)
 
create user 用户名 identified by '密码';
#创建用户账号 用户名 密码
grant all on 数据库名.* to '用户名'@‘ip’;
#授权数据库表名下的所有表数据库名.*的所有权限(all)给用户名在IP访问数据库的时候
例如:grant all on meiduo_mall.* to 'meiduo'@'%';
授权meiduo_mall数据库下的所有表(meiduo_mall.*)的所有权限(all)给用户meiduo在以任何ip访问数据库的时候('meiduo'@'%')
flush privilege;
刷新生效用户权限
 
七、设置settings文件的信息:
1、注册应用:

import sys
"""
之前的子应用都是再Base_dir下,这次我们创建在app中
我们在注册的时候,需要每次都添加一个apps.xx.xxx.xx
apps.users.apps.UsersConfig
如果我们要改为原来的样子users.apps.UsersConfig,需要告知系统 去哪里找
sys.path 列表
sys.path.insert(0,os.path.join(BASE_DIR,'apps'))
添加以上这句话,我们系统就会到apps中查找应用了
""" #让django找到apps包
sys.path.insert(0,os.path.join(BASE_DIR,'apps')) INSTALLED_APPS ={..
'users.apps.UsersConfig',
'verifications.apps.VerificationsConfig',}
2、把默认的sqlite3变更为mysql数据库
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'HOST': '127.0.0.1', # 数据库主机
'PORT': 3306, # 数据库端口
'USER': 'root', # 数据库用户名
'PASSWORD': 'mysql', # 数据库用户密码
'NAME': 'shopping_mall' # 数据库名字,需要自己创建
}
}
在工程的__init__文件中添加
import pymysql
# 作用 让django的ORM能以mysqldb的方式调用PyMySQL
pymysql.install_as_MySQLdb()
3、设置语言及时区,语言主要体现在admin后台中

#语言
LANGUAGE_CODE = 'zh-Hans'
#时区
TIME_ZONE = 'Asia/Shanghai'
4、设置Redis数据库的信息,设置默认数据库、session储存数据库、后期会添加数据库,Redis一共16个库
#redis数据库
CACHES = {
"default": {
"BACKEND": "django_redis.cache.RedisCache",
"LOCATION": "redis://127.0.0.1:6379/0",
"OPTIONS": {
"CLIENT_CLASS": "django_redis.client.DefaultClient",
}
},
"session": {
"BACKEND": "django_redis.cache.RedisCache",
"LOCATION": "redis://127.0.0.1:6379/1",
"OPTIONS": {
"CLIENT_CLASS": "django_redis.client.DefaultClient",
}
}
}
SESSION_ENGINE = "django.contrib.sessions.backends.cache"
SESSION_CACHE_ALIAS = "session"
5、配置日志
#日志
LOGGING = {
'version': 1,
'disable_existing_loggers': False,
'formatters': {
'verbose': {
'format': '%(levelname)s %(asctime)s %(module)s %(lineno)d %(message)s'
},
'simple': {
'format': '%(levelname)s %(module)s %(lineno)d %(message)s'
},
},
'filters': {
'require_debug_true': {
'()': 'django.utils.log.RequireDebugTrue',
},
},
'handlers': {
'console': {
'level': 'DEBUG',
'filters': ['require_debug_true'],
'class': 'logging.StreamHandler',
'formatter': 'simple'
},
'file': {
'level': 'INFO',
'class': 'logging.handlers.RotatingFileHandler',
'filename': os.path.join(BASE_DIR, "logs/shopping.log"), # 日志文件的位置
'maxBytes': 300 * 1024 * 1024,
'backupCount': 10,
'formatter': 'verbose'
},
},
'loggers': {
'django': { # 定义了一个名为django的日志器
'handlers': ['console', 'file'],
'propagate': True,
},
}
}
6、异常处理
REST_FRAMEWORK = {
# 异常处理
'EXCEPTION_HANDLER': 'utils.exceptions.exception_handler',
}
在项目的utils文件夹中创建exceptions.py文件
from rest_framework.views import exception_handler as drf_exception_handler
import logging
from django.db import DatabaseError
from redis.exceptions import RedisError
from rest_framework.response import Response
from rest_framework import status # 获取在配置文件中定义的logger,用来记录日志
logger = logging.getLogger('shopping') def exception_handler(exc, context):
"""
自定义异常处理
:param exc: 异常
:param context: 抛出异常的上下文
:return: Response响应对象
"""
# 调用drf框架原生的异常处理方法
response = drf_exception_handler(exc, context) if response is None:
view = context['view']
if isinstance(exc, DatabaseError) or isinstance(exc, RedisError):
# 数据库异常
logger.error('[%s] %s' % (view, exc))
response = Response({'message': '服务器内部错误'}, status=status.HTTP_507_INSUFFICIENT_STORAGE) return response
7、在工程中这只logs文件夹
8、设置runserver
 

Django项目的创建的基本流程---基本配置的更多相关文章

  1. 1.django项目的创建(在CMD中)

    django项目的创建(在CMD中) 1.切换到你想要存储项目的位置,我这里保存在桌面上 cd Desktop 2.创建一个django项目,项目名叫guest django-admin startp ...

  2. Django项目的创建与介绍.应用的创建与介绍.启动项目.pycharm创建启动项目.生命周期.三件套.静态文件.请求及数据.配置Mysql完成数据迁移.单表ORM记录的增删改查

    一.Django项目的创建与介绍 ''' 安装Django #在cmd中输入pip3 #出现这个错误Fatal error in launcher: Unable to create process ...

  3. Django简介及Django项目的创建详述

    Django简介 Django是一个开源的Web应用框架,由Python写成.但是,百度百科中讲它采用了MVC框架模式,其实这个解释不准确. 确切的讲,Django的模式是:路由控制+MTV模式.所谓 ...

  4. Django---Http协议简述和原理,HTTP请求码,HTTP请求格式和响应格式(重点),Django的安装与使用,Django项目的创建和运行(cmd和pycharm两种模式),Django的基础文件配置,Web框架的本质,服务器程序和应用程序(wsgiref服务端模块,jinja2模板渲染模块)的使用

    Django---Http协议简述和原理,HTTP请求码,HTTP请求格式和响应格式(重点),Django的安装与使用,Django项目的创建和运行(cmd和pycharm两种模式),Django的基 ...

  5. Django项目的创建

    一. Django介绍 Python的WEB框架有Django.Tornado.Flask 等多种, Django相较与其他WEB框架其优势为: 大而全, 框架本身集成了ORM.模型绑定,.模板引擎, ...

  6. Django项目的创建与管理和pycharm与Github的秘密

    随笔 - 174  文章 - 21  评论 - 19 Django项目创建与管理   1.主题 这部分教程主要介绍如何通过Pycharm创建.管理.运行一个Django工程.对于Django模块的相关 ...

  7. 使用Pycharm创建Django项目无法创建app.

    Python3.7使用Django1.11.7创建Django项目报以下错误时: 在使用Pycharm创建Django项目报以下错误时: Traceback (most recent call las ...

  8. Django项目从创建到运行

    环境: Windows Server 2008 R2 标准版 1.安装python运行环境(省略) 2.安装Django pip install Django==3.1.5 # 不写版本号也可以 3. ...

  9. 使用Nginx+uwsgi在亚马逊云服务器上部署python+django项目完整版(二)——部署配置及相关知识

    ---恢复内容开始--- 一.前提: 1.django项目文件已放置在云服务器上,配置好运行环境,可正常运行 2.云服务器可正常连接 二.相关知识 1.python manage.py runserv ...

随机推荐

  1. ibm产品系列架构师技术路线

  2. fetch与XHR的区别与优势

    Fetch API更加现代 XHR 和 Fetch API 最显著的区别就是调用方式不同.这一点大家应该都知道吧. 举个例子,下面两端代码完成的是同一功能: // 用 XHR 发起一个GET请求 va ...

  3. nginx日志相关运维操作记录

    在分析服务器运行情况和业务数据时,nginx日志是非常可靠的数据来源,而掌握常用的nginx日志分析命令的应用技巧则有着事半功倍的作用,可以快速进行定位和统计. 1)Nginx日志的标准格式(可参考: ...

  4. 配置rpm本地源及局域网环境下使用

    LInux个人开发过程中可以直接连到公网,所以想要安装各种软件时直接安装即可,但工作环境往往很让人头疼. 如果应用场景是没法链接外网的,公司内部绝大多数情况下是在自己的局域网下玩,这时候想装个软件是相 ...

  5. D3DX 9.9 LEARNERNOTO

    DirectX 9.0 3D游戏开发编程基础一.开发工具:vs2013 or VC++2005 Direct3D API http://msdn.microsoft.com/directx/sdk D ...

  6. NullReferenceException 的可恨之处

    通常我们在取数据库记录或者字段时,获取不存在的值时,会出现 NullReferenceException 如果根据某个键值去LoadById, 我们通常会检查一下这个键值是否在数据库里存在. 但如果I ...

  7. 关于SASS

    SASS:(是一款辅助编写css的工具 安装之后可以通过同时按window键+“R”键 输入“powershell”进入CMD命令页面: 输入“sass -v”可以查看当前的sass版本 输入“cd ...

  8. 洛谷1196【NOI2002】题解

    题目描述 公元五八○一年,地球居民迁至金牛座α第二行星,在那里发表银河联邦创立宣言,同年改元为宇宙历元年,并开始向银河系深处拓展. 宇宙历七九九年,银河系的两大军事集团在巴米利恩星域爆发战争.泰山压顶 ...

  9. python学习------面向对象的程序设计

    一 面向对象的程序设计的由来 1940年以前:面向机器 最早的程序设计都是采用机器语言来编写的,直接使用二进制码来表示机器能够识别和执行的指令和数 据.简单来说,就是直接编写 和 的序列来代表程序语言 ...

  10. 一款堪称完美的编程字体Source Code Pro

    对于程序员来说,好的字体应该满足的基本条件: 字母和数字易于分辨,如: 英文字母o 和 阿拉伯数字 0 ,或者 英文字母 l 和 阿拉伯数字 1 ,两个单引号 '' 和双引号 ”. 字体等宽,保持对齐 ...