06 创建应用(app),表(model)及路由配置

278次阅读
没有评论

共计 1360 个字符,预计需要花费 4 分钟才能阅读完成。

一. 创建应用 : user

  • 进入到 apps 目录下执行命令
python ../../manage.py startapp user

二. 创建 user 应用对应的 model

  • 进入 app---->user---->model
from django.db import models
from django.contrib.auth.models import AbstractUser


class User(AbstractUser):
    mobile = models.CharField(max_length=11, unique=True)
    # 需要 pillow 包的支持
    icon = models.ImageField(upload_to='icon', default='icon/default.png')

    class Meta:
        db_table = 'luffy_user'
        verbose_name = '用户表'
        verbose_name_plural = verbose_name

    def __str__(self):
        return self.username
  • 下载 pillow 模块
pip install pillow

三. 注册应用并配置 User 表

1. 注册应用

  • develop.py 文件中
INSTALLED_APPS = [
    ...
    'rest_framework',
    'user',
]

2. 配置 User 表

# 指定自定义的表 : [应用名. 表名]
AUTH_USER_MODEL = 'user.User'

四. 配置 media

1.media 路径配置

  • 在 develop.py 文件中配置
MEDIA_URL = '/media/'
MEDIA_ROOT = os.path.join(BASE_DIR, 'media')

2.media 目录配置

├── luffyapi
    └── luffyapi/
        └── media/      
            └── icon 
                └── default.png

06 创建应用 (app), 表(model) 及路由配置

五. 路由配置

1. 主路由配置 : luffyapi/urls.py

from django.contrib import admin
from django.urls import path, re_path, include
from django.views.static import serve
from luffyapi import settings
urlpatterns = [path('admin/', admin.site.urls),
    path('user/', include('user.urls')),
    re_path('^media/(?P<path>.*)', serve, {'document_root': settings.develop.MEDIA_ROOT})

2. 子路由配置 : user/urls.py

from django.urls import path, include
from rest_framework.routers import SimpleRouter
router = SimpleRouter

# 注册 ViewSet 的路由
# router.register()

urlpatterns = [path('', include(router.urls)),
]

六. 进行数据库迁移

  • cd 到项目根路径下, 因为 manage.py 在项目根路径下
python manage.py makemigrations
python manage.py migrate
正文完
 
shawn
版权声明:本站原创文章,由 shawn 2023-06-16发表,共计1360字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
评论(没有评论)