2.初始化项目结构

1.初始化项目结构

└─shiyanlou_project          # 项目根路径    
    │  .gitignore             # 提交git仓库时,不提交的文件必须要在这里进行标注    
    │  README.en.md           # 英文(项目介绍)    
    │  README.md              # 中文项目简介    
    │  requirements.txt       # django项目安装文件    
    │    ├─celery_task            # 用来存放celery相关文件(以便分布式部署)    
    │      __init__.py    
    │    
    ├─db                     # 数据库相关:1.数据库初始化sql脚本; 2.数据库维护脚本,清 理,备份脚本    
    ├─scrips                 # 脚本目录:1.定时任务脚本;2.页面静态化脚本;处理项目脚本       
    ├─logs                   # 存放日志    
    ├─packages               # 外部包,原始的,未配置的:1.七牛云sdk;2.阿里云短信;    
    └─uwsgi_conf             # uwsgi配置,日志,pid    
    │    
    │    
    └─syl                    # 真正的django项目(代码)django-admin startproject   项目名        
    │  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
  • 使用pycharm打开项目
    • 1.右击---->编辑配置----->

    • 2.文件---->设置----->

    • 3.文件---->设置----->

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.4 创建 user/urls.py子路由文件(第三步)

from django.urls import path
urlpatterns = [
]

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

# 把apps目录插入,到系统包搜索路径第一个位置中 
sys.path.insert(0,os.path.join(BASE_DIR,'apps'))

4.重写Django默认认证用户模型

4.1user/models.py创建模型:从写django user表

from django.db import models 
from django.contrib.auth.models import AbstractUser

# Create your models here. 
class User(AbstractUser):    
    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'

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': 'syldb',              # 指定数据库名称:MyCRM        
        'USER': 'root',        
        'PASSWORD': '1',        
        'HOST': '127.0.0.1',        
        'PORT': '3306',    } 
}

4.4 生成表

python manager.py makemigrations 
python manager.py migrate
posted @ 2020-10-27 10:59  瑶瑶y  阅读(28)  评论(0编辑  收藏  举报