午夜视频免费看_日韩三级电影网站_国产精品久久一级_亚洲一级在线播放_人妻体内射精一区二区三区_91夜夜揉人人捏人人添红杏_91福利在线导航_国产又粗又猛又黄又爽无遮挡_欧美日韩一区在线播放_中文字幕一区二区三区四区不卡 _日日夜夜精品视频免费观看_欧美韩日一区二区三区

主頁 > 知識庫 > Django rest framework如何自定義用戶表

Django rest framework如何自定義用戶表

熱門標簽:地圖標注自己和別人標注區(qū)別 打電話機器人營銷 商家地圖標注海報 聊城語音外呼系統(tǒng) 騰訊地圖標注沒法顯示 ai電銷機器人的優(yōu)勢 孝感營銷電話機器人效果怎么樣 南陽打電話機器人 海外網(wǎng)吧地圖標注注冊

說明

Django 默認的用戶表 auth_user 包含 id, password, last_login, is_superuser, username, last_name, email, is_staff, is_active, date_joined, first_name 字段。這些基本字段不夠用時,在此基本表上拓展字段是很好選擇。本文介紹在 DRF(Django Rest Framework) 上使用自定義用戶表進行接口訪問控制的功能設計。

1. Django項目和應用創(chuàng)建

先裝必要的模塊

pip install django
pip install djangorestframework

創(chuàng)建項目文件夾、項目和應用

E:\SweetYaya> mkdir MyProj01
E:\SweetYaya> cd MyProj01
E:\SweetYaya\MyProj01> django-admin startproject MyProj01 .
E:\SweetYaya\MyProj01> django-admin startapp MyApp

同步數(shù)據(jù)庫

E:\SweetYaya\MyProj01> python manage.py migrate
Operations to perform:
  Apply all migrations: admin, auth, contenttypes, sessions
Running migrations:
  Applying contenttypes.0001_initial... OK
  Applying auth.0001_initial... OK
  Applying admin.0001_initial... OK
  Applying admin.0002_logentry_remove_auto_add... OK
  ...
  Applying sessions.0001_initial... OK

執(zhí)行如下命令后測試訪問 http://127.0.0.1:8000/

E:\SweetYaya\MyProj01>python manage.py runserver
Watching for file changes with StatReloader
Performing system checks...

System check identified no issues (0 silenced).
June 07, 2021 - 21:16:57
Django version 3.2.4, using settings 'MyProj01.settings'
Starting development server at http://127.0.0.1:8000/
Quit the server with CTRL-BREAK.

2. 自定義User表

打開 MyApp/models.py 文件,創(chuàng)建繼承自 AbstractUserUserProfile 類,給它添加 namemobile 字段,它就是我們自定義的用戶表。

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


class UserProfile(AbstractUser):
    name = models.CharField(max_length=30, null=True, blank=True, verbose_name="姓名")
    mobile = models.CharField(max_length=11, verbose_name="電話")

    class Meta:
        verbose_name = "用戶"
        verbose_name_plural = "用戶"

        def __str__(self):
            return self.name

3. 序列化和路由

我們直接在 MyProj01/url.py 中進行定義序列化方法和路由配置

from django.urls import path, include
from MyApp.models import UserProfile
from rest_framework import routers, serializers, viewsets


# Serializers define the API representation.
class UserSerializer(serializers.HyperlinkedModelSerializer):
    class Meta:
        model = UserProfile
        fields = ['url', 'username', 'name', 'mobile', 'email', 'is_staff']


# ViewSets define the view behavior.
class UserViewSet(viewsets.ModelViewSet):
    queryset = UserProfile.objects.all()
    serializer_class = UserSerializer


# Routers provide an easy way of automatically determining the URL conf.
router = routers.DefaultRouter()
router.register('users', UserViewSet)

# Wire up our API using automatic URL routing.
# Additionally, we include login URLs for the browsable API.
urlpatterns = [
    path('', include(router.urls)),
    path('api-auth/', include('rest_framework.urls', namespace='rest_framework'))
]

3. DRF配置

找到 MyProj01/settings.py ,做如下配置

加入上面創(chuàng)建的應用和 rest_framework

INSTALLED_APPS = [
    'django.contrib.admin',
	...
    'rest_framework',
    'MyApp',
]

添加全局認證設置

REST_FRAMEWORK = {
    'DEFAULT_PERMISSION_CLASSES': [
        'rest_framework.permissions.IsAuthenticated'
    ]
}

修改默認用戶表,至此 settings.py 全部配置完成了。

AUTH_USER_MODEL = 'MyApp.UserProfile'

4. 同步數(shù)據(jù)庫

執(zhí)行 makemigrations 命令

E:\SweetYaya\MyProj01> python manage.py makemigrations
Migrations for 'MyApp':
  MyApp\migrations\0001_initial.py
    - Create model UserProfile

執(zhí)行 migrate 命令出現(xiàn)如下錯誤

E:\SweetYaya\MyProj01> python manage.py migrate
Traceback (most recent call last):
  File "manage.py", line 22, in module>
    main()
  File "manage.py", line 18, in main
    execute_from_command_line(sys.argv)
  File "D:\Program Files\Python36\lib\site-packages\django\core\management\__init__.py", line 419, in execute_from_command_line
    utility.execute()
  File "D:\Program Files\Python36\lib\site-packages\django\core\management\__init__.py", line 413, in execute
    self.fetch_command(subcommand).run_from_argv(self.argv)
  File "D:\Program Files\Python36\lib\site-packages\django\core\management\base.py", line 354, in run_from_argv
    self.execute(*args, **cmd_options)
  File "D:\Program Files\Python36\lib\site-packages\django\core\management\base.py", line 398, in execute
    output = self.handle(*args, **options)
  File "D:\Program Files\Python36\lib\site-packages\django\core\management\base.py", line 89, in wrapped
    res = handle_func(*args, **kwargs)
  File "D:\Program Files\Python36\lib\site-packages\django\core\management\commands\migrate.py", line 95, in handle
    executor.loader.check_consistent_history(connection)
  File "D:\Program Files\Python36\lib\site-packages\django\db\migrations\loader.py", line 310, in check_consistent_history
    connection.alias,
django.db.migrations.exceptions.InconsistentMigrationHistory: Migration admin.0001_initial is applied before its dependency MyApp.0001_initial on database 'default'.

解決辦法

makemigrations打開 settings.py ,注釋掉 INSTALL_APPS 中的
'django.contrib.admin',打開 urls.py ,注釋掉 urlpatterns 中的 admin,再 migrate 就不報錯了。最后注意把注釋內(nèi)容恢復回來就好了。

E:\SweetYaya\MyProj01> python manage.py migrate
Operations to perform:
  Apply all migrations: MyApp, admin, auth, contenttypes, sessions
Running migrations:
  Applying contenttypes.0001_initial... OK
  Applying contenttypes.0002_remove_content_type_name... OK
  ...
  Applying admin.0003_logentry_add_action_flag_choices... OK
  Applying sessions.0001_initial... OK

5. 測試

執(zhí)行命令

E:\SweetYaya\MyProj01>python manage.py runserver

訪問 http://127.0.0.1:8000/users/ 出現(xiàn)結果如下,此時表明配置成功,但是尚未進行用戶登錄無權訪問。

6. 命令行注冊用戶

進入 Python Shell

E:\SweetYaya\MyProj01> python manage.py shell
Python 3.6.6 (v3.6.6:4cf1f54eb7, Jun 27 2018, 03:37:03) [MSC v.1900 64 bit (AMD64)]
Type 'copyright', 'credits' or 'license' for more information
IPython 6.5.0 -- An enhanced Interactive Python. Type '?' for help.

鍵入如下代碼

In [1]: from MyApp.models import UserProfile

In [2]: from django.contrib.auth.hashers import make_password

In [3]: ist = UserProfile(username='guest01',password=make_password('123456'))

In [4]: ist.save()

In [5]: ist = UserProfile(username='guest02',password=make_password('123456'))

In [6]: ist.save()

然后在數(shù)據(jù)庫中查看 MyApp_userprofile 表發(fā)現(xiàn)多了兩條記錄,添加成功,繼續(xù)訪問 http://127.0.0.1:8000/users/ 地址,使用用戶密碼登錄可見如下。測試完成。

到此這篇關于Django rest framework如何自定義用戶表的文章就介紹到這了,更多相關Django rest framework自定義用戶表內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

您可能感興趣的文章:
  • Django restframework 框架認證、權限、限流用法示例
  • DjangoRestFramework 使用 simpleJWT 登陸認證完整記錄
  • 深度解析Django REST Framework 批量操作
  • Python3+PyCharm+Django+Django REST framework配置與簡單開發(fā)教程
  • Django REST Framework 分頁(Pagination)詳解
  • Django restful framework生成API文檔過程詳解
  • 自定義Django_rest_framework_jwt登陸錯誤返回的解決
  • django rest framework使用django-filter用法
  • django restframework serializer 增加自定義字段操作
  • Django REST framework 限流功能的使用

標簽:六盤水 楊凌 南寧 撫州 聊城 揚州 迪慶 牡丹江

巨人網(wǎng)絡通訊聲明:本文標題《Django rest framework如何自定義用戶表》,本文關鍵詞  Django,rest,framework,如何,自定義,;如發(fā)現(xiàn)本文內(nèi)容存在版權問題,煩請?zhí)峁┫嚓P信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《Django rest framework如何自定義用戶表》相關的同類信息!
  • 本頁收集關于Django rest framework如何自定義用戶表的相關信息資訊供網(wǎng)民參考!
  • 推薦文章
    97在线观看视频国产| 视频一区二区三区中文字幕| 日韩av片永久免费网站| 久久午夜国产精品| www.黄色小说.com| 国产精品美女一区| 国产精品久久久久久人| 少妇精品一区二区三区| 亚洲资源在线网| 亚洲国产精品中文| 美女视频一区二区三区| 久久久久久久久久久久国产精品| 欧美激情综合亚洲一二区| 狠狠人妻久久久久久综合| 久久精品日产第一区二区三区精品版| 91大片在线观看| 亚洲精品美女久久| 成人99免费视频| 国产精品99精品无码视| 欧美肥婆姓交大片| 欧美日韩在线直播| 国产精品嫩草久久久久| 久久精品一区八戒影视| 亚洲综合精品自拍| 国产丝袜在线精品| 国产精品色婷婷| 亚洲一卡二卡在线| av在线播放天堂| 欧美精品成人91久久久久久久| 欧美这里有精品| 欧美爱爱小视频| 91精品视频在线| 成人日韩av在线| 欧美激情免费看| 亚洲最大的成人av| 肉色丝袜一区二区| 亚洲第一综合| 欧美最顶级丰满的aⅴ艳星| 亚洲欧洲日本专区| 一区二区三区四区视频| 精品国产一区二区三区在线观看| 97视频在线观看网址| 69影院欧美专区视频| 久久精品福利视频| 91精品国产综合久久久久久久| 久久99精品久久久久久国产越南 | 国产精品久久久久影院色老大 | 日韩免费在线观看| 日韩精品自拍偷拍| 精品香蕉一区二区三区| 亚洲大型综合色站| 日韩中文字幕一区二区三区| 日韩a在线播放| 国产中文日韩欧美| 欧美贵妇videos办公室| 91精品国产自产在线老师啪| 精品999在线观看| 爱情岛论坛vip永久入口| 国产黑丝在线视频| 欧美熟妇精品一区二区蜜桃视频| 色综合影院在线观看| 性日韩欧美在线视频| 日韩欧美资源站| 亚洲国产成人av网| 伊人网视频在线| 亚洲黄色片免费看| 第四色婷婷基地| 偷偷色噜狠狠狠狠的777米奇| 欧美日韩在线观看不卡| 成人免费在线视频播放| 庆余年2免费日韩剧观看大牛| 欧美精品久久一区| 亚洲第一福利视频在线| 亚洲欧洲日产国产综合网| av一区二区三区黑人| 国产草草影院ccyycom| 天天色天天干天天色| 一区二区视频在线免费| 欧美精品一区二区三区蜜桃视频| 国产又粗又长视频| 国产三级国产精品| 少妇无套内谢久久久久| 99热这里只有精品99| 五月婷婷六月香| 国产精品果冻传媒| 日本欧美精品久久久| 国产女主播一区二区三区| 国产一二三在线视频| 亚洲波多野结衣| 国产一区二区三区在线观看精品 | 能看的毛片网站| 国产精品久久色| 狠狠色狠狠色综合日日小说| 亚洲爱爱综合网| 日本在线一级片| 久久久精品在线视频| 看一级黄色录像| 精品人伦一区二区三电影| 99在线视频免费| 亚洲aaa视频| 懂色av蜜臀av粉嫩av分享吧最新章节| 色姑娘综合av| 日本在线视频www| 四虎成人免费影院| 国内久久精品视频| 日韩精品在线播放| 久久亚洲国产精品日日av夜夜| 深夜视频在线观看| 久久精品亚洲无码| 91片黄在线观看喷潮| 欧美一级高潮片| 国产男男gay网站| 免费国产羞羞网站视频| 媚黑女一区二区| 夫妻性生活毛片| 日韩一区二区三区不卡视频| 日韩黄色片网站| 91丨porny丨最新| 成人性生交大合| 亚洲人妖av一区二区| 7777精品伊人久久久大香线蕉最新版| www国产亚洲精品久久麻豆| 亚洲精品视频一区| 日韩欧美色综合| 国产欧美中文字幕| 欧洲成人午夜精品无码区久久| 在线观看免费视频a| 久久精品一区八戒影视| 久久久亚洲精品石原莉奈| 国产在线精品一区二区不卡了| 成人激情小说网站| 欧美性xxxxxx| 最新不卡av在线| 国产精品久久午夜夜伦鲁鲁| 97精品视频在线播放| 一区二区三区的久久的视频| 日韩三级电影| 先锋资源在线视频| 国产女优在线播放| 国产成人啪精品午夜在线观看| 国内成人精品2018免费看| 欧美日韩电影一区| 手机成人在线| 亚洲怡红院av| 欧美日韩电影在线| wwwwww欧美| 天天干天天综合| 男女免费视频网站| 精品人妻一区二区三区含羞草| 老司机免费视频一区二区| 综合精品久久久| 日韩视频123| 精品美女在线观看| 久久视频免费观看| 国产日韩在线免费| 欧美多人猛交狂配| www.在线欧美| 亚洲色大成网站www久久九九| 欧美精品丝袜久久久中文字幕| 成人国产精品免费视频| 日本午夜在线亚洲.国产| www..com日韩| 欧美成人黄色网| 91视频一区二区三区| 国产精品国模在线| 老女人性淫交视频| 欧美不卡一区二区| 天天干天天色天天干| 日韩精品三区四区| 制服丝袜日韩国产| 欧美激情二区三区| 久操手机在线视频| 欧美一区二区三区四| 久久综合久久综合亚洲| 欧美视频一区二区在线观看| 日韩亚洲综合在线| 国产无套精品一区二区| www.国产成人| 一本到不卡精品视频在线观看| 亚洲福利视频二区| 痴汉一区二区三区| 久久久久亚洲AV成人无在| 欧美另类视频在线观看| 久久福利视频一区二区| 日韩精品中文字幕一区| 欧美裸体一区二区三区| 中文字幕永久免费| 在线观看三级视频欧美| 久久精品99国产| 国产在线观看一区二区| 国产欧美日韩一区| 国产福利拍拍拍| 99视频国产精品| 在线成人中文字幕| 日本精品免费在线观看| 中文字幕乱码视频| 亚洲精品一二三| 日韩第一页在线| 国产欧美日韩一区二区三区| 国产精品天天操| 国产精品资源在线观看| 色天使色偷偷av一区二区| 国产三级精品网站| 懂色av懂色av粉嫩av| 日韩专区欧美专区| 欧美一区二区三区在线观看视频 | 潘金莲一级淫片aaaaaa播放1| 国产剧情一区二区三区| 国产欧美久久久久久| 国产99久久久久久免费看| 精品久久一二三区| 免费男同深夜夜行网站| 奇米精品一区二区三区在线观看| 国产亚洲免费的视频看| 免费观看精品视频| 国产一区二区美女诱惑| 欧美日韩不卡合集视频| 国产a级黄色大片| 91成人在线免费| 亚洲少妇激情视频| x88av在线| 日韩精品一区二区三区在线观看| 国产亚洲欧美一区二区三区| 丰满少妇xoxoxo视频| 亚洲精品午夜精品| xx欧美撒尿嘘撒尿xx| 在线免费观看毛片| 久久精品夜夜夜夜夜久久| 91视频在线免费| 欧美一三区三区四区免费在线看| 97在线观看免费高| 欧美激情18p| 日本不卡的三区四区五区| 久久久久久久久久码影片| 卡一卡二国产精品| 57pao精品| 你懂的在线观看网站| 九一九一国产精品| 亚洲综合大片69999| 亚洲熟妇无码乱子av电影| 欧美日韩国产成人在线91| 精品99在线视频| 国产亚洲欧美日韩高清| 精品国产精品自拍| 5566av亚洲| 卡通动漫亚洲综合| 亚洲免费在线看| 18禁免费无码无遮挡不卡网站| 久久久久久夜精品精品免费| 91色p视频在线| 国产嫩bbwbbw高潮| 日av在线播放中文不卡| 天堂网一区二区三区| 亚洲a级在线播放观看| 大胆亚洲人体视频| 五月天国产视频| 日韩在线精品一区| 欧美aⅴ一区二区三区视频| 欧美精品欧美精品| 九九视频精品免费| 91高潮在线观看| 日韩在线播放中文字幕| 久久国产精品久久国产精品| 久久久久亚洲av无码专区体验| zzjj国产精品一区二区| 国产性生活网站| 高跟丝袜欧美一区| 综合久久国产| 熟妇人妻系列aⅴ无码专区友真希| 亚洲久久久久久久久久| 一级黄色免费视频| 91精品婷婷国产综合久久竹菊| 小毛片在线观看| 日韩激情av在线免费观看| 国产chinese中国hdxxxx| 亚洲精品456在线播放狼人| 国产精品三区在线观看| 国产成人一区二区三区| 国产精品美女视频| 国产精品日日夜夜| 欧美三级华人主播| 黑人巨大精品欧美一区二区三区 | 777国产偷窥盗摄精品视频| 欧美成人手机视频| 久久99久久99精品免观看粉嫩 | 亚洲欧美一区二区三区极速播放 | 日韩国产高清影视| 国产精品99久久99久久久二8| 美女www一区二区| 中文字幕一区二区三区精彩视频 | 人妻少妇精品一区二区三区| 91精品综合久久久久久| 国产chinasex对白videos麻豆| 东北少妇不带套对白| 欧美黄色三级网站| 一区二区高清在线| 这里只有精品999| 欧洲高清一区二区| 国产精品毛片高清在线完整版| 国产不卡视频在线| 亚洲国产福利视频| 成人毛片网站| www.爱久久.com| 无人在线观看的免费高清视频 | 在线观看国产福利| 亚洲免费av网站| 99久久国产宗和精品1上映| 天天操天天综合网| 久久av一区二区三| 精品播放一区二区| 国产又大又黄又粗| 日韩av电影免费播放| 午夜一区二区三区在线观看| 天天干天天玩天天操| 亚洲午夜未满十八勿入免费观看全集| 亚洲成人77777| 国产精品一二三视频| 丰满岳妇乱一区二区三区| 手机av免费观看| 91av视频免费观看| 久久av一区二区三区漫画| 日韩欧美的一区| 久久久亚洲高清| 日韩伦理在线视频| 国产精品美乳一区二区免费| 99国产精品久| 色一情一交一乱一区二区三区| 久久精品久久精品亚洲人| 免费不卡在线观看| 日本高清久久久| 高清一区二区三区日本久| 懂色av一区二区三区蜜臀| 咪咪色在线视频| 婷婷综合在线观看| 日本高清不卡免费| 国产精品久久999| 不卡视频免费播放| 无码国产精品久久一区免费| 欧美黄色三级网站| 国产精品免费久久| 日韩精品一区二区不卡| 国产精品欧美久久| 在线精品视频一区二区三四| 中文字幕视频网站| 欧美一区2区三区4区公司二百| 亚洲女人被黑人巨大进入al | 久久久精品麻豆| 欧美精彩一区二区三区| 性欧美亚洲xxxx乳在线观看| 日本精品视频一区二区| 久久亚洲捆绑美女| 国产精品乱子伦| 国产精品后入内射日本在线观看| 色综合男人天堂| 久久影院视频免费| 中文字幕在线字幕中文| 亚洲狠狠婷婷综合久久久| 日本高清不卡在线观看| 蜜臀av性久久久久av蜜臀妖精| 美女网站免费观看视频| 色悠悠久久久久| 懂色av一区二区三区免费看| 亚洲精品乱码久久久久久蜜桃图片| 欧美激情亚洲自拍| 国产日韩精品视频一区| 久久久久久福利| 欧美激情www| 毛片精品免费在线观看| 亚洲成人av福利| 日本伊人午夜精品| 日韩va在线观看| 亚洲a中文字幕| 日韩国产精品视频| 亚洲精品第一国产综合野| 成人一区在线观看| 久久精品系列| 中文字幕+乱码+中文乱码www| 久久精品日韩无码| 国产精品精品软件男同| 亚洲欧美另类动漫| 日韩资源av在线| 国产在线拍揄自揄视频不卡99| 亚洲第一精品福利| 国产精品久久久久久久第一福利| 久久综合伊人| 久久久久久久久免费看无码| 欧美一区二区三区精美影视| 亚洲国产精品人久久电影| 国产精品福利影院| 日韩主播视频在线| 欧美一级特黄高清视频| 亚洲精品无码久久久久久| 欧美黑人巨大精品一区二区| 亚洲免费在线观看视频| 亚洲奶汁xxxx哺乳期| 九九九视频在线观看| 亚洲爆乳无码精品aaa片蜜桃| 91精品国产99久久久久久| 欧美午夜电影在线播放| 日本一区二区三区高清不卡| 久久精品国产久精国产| 91porny九色| 三级男人添奶爽爽爽视频| 快播日韩欧美| 97精品一区二区三区| 亚洲女成人图区| 欧美一区二区三区小说| 色综合网站在线| 91黄视频在线| 欧美日韩aaaaaa|