创建应用 | 表

项目后端 - 创建应用 | 创建表

        </h1>
        <div class="clear"></div>
        <div class="postBody">

user应用模块 及 User表

这里用一个user应用作为案例

创建user应用模块

复制代码
前提:在 luffy 虚拟环境下

1.终端从项目根目录进入apps目录
>: cd luffyapi & cd apps

2.创建app
>: python ../../manage.py startapp user
# 创建应用是基于manage.py执行命令,所以要找到manage.py

复制代码

创建User表对应的model:user/models.py

复制代码
from django.db import models
from django.contrib.auth.models import AbstractUser
class User(AbstractUser):
    mobile = models.CharField(max_length=11, unique=True)
    icon = models.ImageField(upload_to='icon', default='icon/default.png')
</span><span style="color: #0000ff;">class</span><span style="color: #000000;"> Meta:
    db_table </span>= <span style="color: #800000;">'</span><span style="color: #800000;">luffy_user</span><span style="color: #800000;">'</span><span style="color: #000000;">
    verbose_name </span>= <span style="color: #800000;">'</span><span style="color: #800000;">用户表</span><span style="color: #800000;">'</span><span style="color: #000000;">
    verbose_name_plural </span>=<span style="color: #000000;"> verbose_name

</span><span style="color: #0000ff;">def</span> <span style="color: #800080;">__str__</span><span style="color: #000000;">(self):
    </span><span style="color: #0000ff;">return</span> self.username</pre>
复制代码

注册user模块,配置User表:dev.py

复制代码
INSTALLED_APPS = [
    # ...
    'user',
]

# 自定义User表 因为User表是基于 auth_user 表创建
AUTH_USER_MODEL = 'user.User'

复制代码

配置media

media配置:dev.py
MEDIA_URL = '/media/'
MEDIA_ROOT = os.path.join(BASE_DIR, 'media')
media目录配置
复制代码
"""
├── luffyapi
    └── luffyapi/
        └── media/      
            └── icon 
                └── default.png
"""
复制代码

数据库迁移

# 数据迁移是基于manage.py执行命令,所以要找到manage.py
迁移命令: 
python manage.py makemigrations 
python manage.py migrate

 注意: 迁移时会报Pillow模块的错误,因为user表中

安装Pillow模块
>: pip install Pillow

 创建admin

>: python manage.py createsuperuser

 apps/user/admin/py

from django.contrib import admin
from . import models
# Register your models here.
admin.site.register(models.User)

原文地址:https://www.cnblogs.com/shaozheng/p/12147087.html