1.ubuntu 开发环境初始化
shiyanlou_project # 项目根目录
.gitgnore # 提交git仓库时,不提交的文件必须要在这里标注
README.en.md # 英文(项目介绍)
celery_task # 用来存放celery相关文件
__init__.py
db # 数据库相关:1.数据库初始化sql脚本;2.数据库维护脚本,清理,备份脚本
scrips # 脚本目录:定时任务脚本;2.页面静态化脚本;处理项目项目脚本
packages # 外部包,原始的,未配置的;1.七牛云sdk;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
- 使用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.3syl/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):
phone = models.CharField('手机号',max_length=20)
img = models.ImageField(uploads_to = 'user',null=True)
nick_name = models.CharFideld('昵称',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' : {
'ENGING':'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
'PORT':'3306',
}
]
4.4 生成表
```python
python manager.py makemigrations
python manager.py migrate