Loading

django基础之初始化项目结构(2)

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模型   需要先cd apps

  

  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.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):
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 manage.py makemigrations

python manage.py migrate

  

 

posted @ 2020-09-27 20:33  就学45分钟  阅读(130)  评论(0)    收藏  举报