1.初始化项目结构 

└─shiyanlou_project   

│  .gitignore   

│  README.en.md           # 英文   

│  README.md              # 中文项目简介   

│   

├─celery_task            # 用来存放celery相关文件   

│      __init__.py   

│   

├─db                     # 数据库相关:1.数据库初始化sql脚本; 2.数据库维护脚本,清 理,备份脚本   

├─logs                   # 存放日志   

├─packages               # 外部包,原始的,未配置的:1.七牛云sdk;2.阿里云短信;   

├─scrips                 # 脚本目录:1.定时任务脚本;2.页面静态化脚本;处理项目脚本   

└─uwsgi_conf             # uwsgi配置,日志,pid   

│   

│   

└─syl       

│  apps (python包)                   # Django各种app模块         

│  libs (python包)                   # 七牛云sdk+配置       

│  utils (python包)                  # 小工具,常用函数       

│  static                         

│  templates       

│  syl(项目配置)       

│  manager.py

 2.创建Django项目

root@dev:shiyanlou_project# workon syl

(syl) root@dev:shiyanlou_project# cd /aaa/shiyanlou_project/

(syl) root@dev:shiyanlou_project# django-admin startproject syl

# 注:创建三个python包, apps、utils、libs

3.创建user模型
3.1 创建用户模型user

python ../manage.py startapp user  # 创建user模型

3.2 在setting.py中注册user模型(第一步)

INSTALLED_APPS = [

'user.apps.UserConfig',

]

# 注:pycharm无法联想,需要把apps文件夹设置为源根

3.3 syl/urls.py添加主路由(第二步)

urlpatterns=[

path('user/',include('user.urls'))

]
3.5 syl/settings.py中添加apps路径

# 把apps目录插入,到系统包搜索路径第一个位置中

sys.path.insert(0,os.path.join(BASE_DIR,'apps'))
3.4 创建 user/urls.py子路由文件(第三步)

from django.urls import path
urlpatterns = [
]

4.重写Django默认认证用户模型
4.1 user/models.py创建模型:从写django user表

from django.db import models
from django.contrib.auth.models import AbstractUser
# Create your models here.
class User(AbstractUser):
DoesNotExist = None
phone = models.CharField('手机号',max_length=20)
img = models.ImageField(upload_to='user',null=True)
nick_name = models.CharField('昵称',max_length=20)
address = models.CharField('地址',max_length=255)
class Meta:
db_table = 'tb_user'

models

4.2 syl/settings.py中注册自己的用户模型类

# 注册自己的用户模型类: 应用名.模型名,指定我们重写的User表进行身份验证

AUTH_USER_MODEL = 'user.User

4.3配置mysql

'''1.创建mysql数据库'''

mysql> create database syldb charset utf8;
'''2.在syl/settings.py中配置mysql'''

DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': 'syl01',
'PORT': 3306,
'HOST': '127.0.0.1',
'PASSWORD': '1',
'USER': 'root',
}
}

syl/settings.py

4.4生成表

python manager.py makemigrations

python manager.py migrate

day1(初始化项目结构)的更多相关文章

  1. Minecraft Forge编程入门三 “初始化项目结构和逻辑”

    经过前面两个教程Minecraft Forge编程入门一 "环境搭建"和Minecraft Forge编程入门二 "工艺和食谱",我们大体知道了如何自定义合成配 ...

  2. react-native 项目实战 -- 新闻客户端(1) -- 初始化项目结构

    1.在项目根目录新建Componet文件夹(专门用来放我们的自定义组件),里面新建Main.js.Home.js.Message.js.Mine.js.Find.js 2.修改 index.andro ...

  3. django 初始化项目 和modelviewset 使用

    django初始化项目 1.初始化项目结构└─shiyanlou_project │ .gitignore│ README.en.md # 英文│ README.md # 中文项目简介│├─celer ...

  4. 上门洗车APP --- Androidclient开发 之 项目结构介绍

    上门洗车APP --- Androidclient开发 之 项目结构介绍 前言 尽管公司项目较紧,但还是抽空给大家继续更新. o_O"~ 欢迎大家的关注,非常高兴和大家共同学习.前面给大家分 ...

  5. ABP架构学习系列一 整体项目结构及目录

    本系列是基于aspnetboilerplate-0.8.4.0版本写的,其中原因是由于较高的版本太抽象难以理解和分析,对于还菜菜的我要花更多的时间去学习. abp的源码分析学习主要来源于 HK Zha ...

  6. 【Flask】 项目结构说明

    项目结构 Flask的一大优势就是其极其轻量化.但是也需要注意到,如果我们要用Flask做一个大项目的话,把所有代码写在一个文件里肯定是不合适的.非常难以维护.但是和Django这种框架又不一样,Fl ...

  7. React Native 系列(三) -- 项目结构介绍

    前言 本系列是基于React Native版本号0.44.3写的,相信大家看了本系列前面两篇文章之后,对于React Native的代码应该能看懂一点点了吧.本篇文章将带着大家来认识一下React N ...

  8. vue初始化项目,构建vuex的后台管理项目架子

    构架vuex的后台管理项目源码:https://github.com/saucxs/structure-admin-web 一.node安装 可以参考这篇文章http://www.mwcxs.top/ ...

  9. Vue-admin工作整理(二):项目结构个人配置

    通过上一篇文章(Vue-admin工作整理(一):项目搭建)操作完毕后,基础项目已经搭建,下面就要对项目本身进行一下项目结构调整来符合自己的项目要求 1.首先要对package.json文件进行调整, ...

随机推荐

  1. 851. Loud and Rich —— weekly contest 87

    851. Loud and Rich 题目链接:https://leetcode.com/problems/loud-and-rich/description/ 思路:有向图DFS,记录最小的quie ...

  2. 【SpringBoot】07.SpringBoot文件上传

    SpringBoot文件上传 1.编写html文件在classpath下的static中 <!DOCTYPE html> <html> <head> <met ...

  3. leetcode4:sort-list

    题目描述 在O(n log n)的时间内使用常数级空间复杂度对链表进行排序. Sort a linked list in O(n log n) time using constant space co ...

  4. html的height:100%;高度是多少

    html的height:100%;高度是多少 html设置height:100%;表示一屏高度,类似于100vh.未设置则根据子元素的高度来自适应高.在实际应用中,设置页面高度为1屏幕高度通常设置: ...

  5. c++实现扫雷游戏 初学

    设计思路 全局变量定义地图和一些判断信息 创建三个地图 分别表示 源地图  显示的效果地图  和一个用来判断点位是否被选中的地图 功能: 玩家输入要翻开的格子的行数和列数.用一个函数来翻开目标格子,如 ...

  6. 重看 mb volatile atomic

    在单处理器情况下,每条指令的执行都是原子性的,但在多处理器情况下,只有那些单独的读操作或写操作才是原子性的.为了弥补这一缺点,x86提供了附加的lock前缀,使带lock前缀的读修改写指令也能原子性执 ...

  7. Ceph S3 基于NGINX的集群复制方案

    前言 ceph的s3数据的同步可以通过radosgw-agent进行同步,同region可以同步data和metadata,不同region只能同步metadata,这个地方可以参考下秦牧羊梳理的 c ...

  8. 协程gevent模块和猴子补丁

    # pip 装模块 greenlet和gevent # 协程 # 与进程.线程一样也是实现并发的手段 # 创建一个线程.关闭一个线程都需要创建寄存器.栈等.需要消耗时间 # 协程本质上是一个线程 # ...

  9. 使用Folx下载热门电影居然这么简单

    在闲暇的时候,很多人会选择观看电影.电视剧来打发时间.对于一些热门的资源,可以通过网页搜索的方式,找到很多与之相对应的种子资源. 但有时候,一些不那么热门的资源就要花费较多时间搜索.有了Folx bt ...

  10. 【MathType教学】如何让括号内的内容居中

    作为一款非常好用的公式编辑器,MathType它的功能十分强大,不仅包含了大量的数学符号,并且能和Office软件很好地兼容.但是有的时候打出来的公式可能不是自己想要的效果,这时我们就要用一些特别的办 ...