最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Django中創(chuàng)建用戶與修改密碼方式

 更新時間:2026年02月05日 09:05:29   作者:wenjunna  
Django中創(chuàng)建用戶有三種方式:命令行創(chuàng)建管理員、代碼中創(chuàng)建普通用戶和使用Django管理后臺,創(chuàng)建用戶時要注意密碼處理,推薦使用`create_user`方法,如果需要重置密碼,可以通過命令行、Django Shell或管理后臺操作

在 Django 中創(chuàng)建用戶有多種方式,具體取決于你是想通過 管理后臺命令行 還是 代碼(視圖/API) 來實現(xiàn)。

以下是三種最常用的方法:

1. 使用命令行創(chuàng)建管理員 (Superuser)

如果你是剛開始開發(fā)項目,需要進(jìn)入 Django Admin 后臺,可以使用以下命令:

python manage.py createsuperuser

系統(tǒng)會提示你輸入:

  • Username: 用戶名
  • Email address: 郵箱
  • Password: 密碼(輸入時不會顯示字符)

2. 在代碼中創(chuàng)建普通用戶

如果你是在編寫注冊功能或邏輯腳本,可以使用 Django 內(nèi)置的 User 模型。

推薦做法:使用 create_user 方法(它會自動處理密碼加密)。

from django.contrib.auth.models import User

# 創(chuàng)建用戶并保存到數(shù)據(jù)庫
user = User.objects.create_user(
    username='myusername', 
    email='test@example.com', 
    password='mypassword123'
)

# 還可以設(shè)置其他屬性
user.first_name = 'John'
user.last_name = 'Doe'
user.save()

[!IMPORTANT]

注意: 千萬不要使用 User.objects.create() 來創(chuàng)建用戶,因為這樣會導(dǎo)致密碼以明文形式存入數(shù)據(jù)庫,用戶將無法登錄。

3. 使用 Django 管理后臺

這是最直觀的圖形化操作方式:

  1. 啟動服務(wù)器:python manage.py runserver。
  2. 訪問 http://127.0.0.1:8000/admin。
  3. 使用管理員賬號登錄。
  4. 點擊 Users (用戶) 旁的 Add (+) 按鈕。
  5. 輸入用戶名和密碼即可。

核心 API 參考表

方法適用場景密碼處理
create_user()標(biāo)準(zhǔn)注冊流程自動加密 (Hash)
create_superuser()創(chuàng)建擁有所有權(quán)限的管理員自動加密 (Hash)
User.objects.create()錯誤做法明文存儲(極不安全)

進(jìn)階建議:自定義用戶模型

如果你正在開發(fā)一個新項目,Django 官方強烈建議使用 自定義用戶模型 (Custom User Model)。這樣以后你想用“手機號”或“郵箱”代替“用戶名”登錄時,就不需要重構(gòu)整個數(shù)據(jù)庫了。

如果你忘記了 Django 管理員(Superuser)的密碼,或者需要重置某個用戶的密碼,可以根據(jù)你的權(quán)限等級選擇以下方法:

1. 使用命令行重置(最快捷)

如果你有服務(wù)器終端的訪問權(quán)限,這是最簡單的方法。Django 提供了一個專門的命令來更改密碼:

python manage.py changepassword <用戶名>

操作步驟:

  1. 運行上述命令(例如:python manage.py changepassword admin)。
  2. 按照提示輸入新密碼(輸入時字符不可見)。
  3. 確認(rèn)新密碼,完成后系統(tǒng)會提示 Password changed successfully。

2. 通過 Django Shell 重置(最靈活)

如果你不記得用戶名,或者需要批量操作,可以使用 Python 交互式環(huán)境:

python manage.py shell

在 Shell 中輸入以下代碼:

from django.contrib.auth.models import User

# 1. 查找用戶(如果你不記得名字,可以先 User.objects.all() 查看)
user = User.objects.get(username='your_username')

# 2. 設(shè)置新密碼
user.set_password('new_password123')

# 3. 必須保存!
user.save()

exit()

3. 如果連用戶名都忘了怎么辦?

如果你完全不記得有哪些超級管理員,可以先進(jìn)入 Shell 查看列表:

from django.contrib.auth.models import User
# 列出所有超級管理員的用戶名
User.objects.filter(is_superuser=True).values_list('username', flat=True)

4. 通過管理后臺 (Admin)

如果你已經(jīng)登錄了另一個具有“更改用戶”權(quán)限的賬號:

  1. 進(jìn)入 /admin/auth/user/。
  2. 點擊對應(yīng)的用戶名。
  3. 在密碼字段附近,通常會有一個**“該表單不包含密碼。你可以在此修改密碼”**的鏈接。
  4. 點擊鏈接進(jìn)入專用修改頁面。

常見問題提示

  • Hash 加密: 永遠(yuǎn)不要直接在數(shù)據(jù)庫(如 SQLite 或 MySQL 客戶端)中手動修改密碼字段,因為 Django 存儲的是經(jīng)過 PBKDF2 算法加密的 Hash 值,直接輸入明文會導(dǎo)致無法登錄。
  • Session 失效: 修改密碼后,該用戶在其他設(shè)備上的登錄狀態(tài)會失效(Session 會更新)。

如果你正在使用自定義的用戶模型(Custom User Model),導(dǎo)入方式可能略有不同。需要我演示如何獲取自定義模型嗎?

總結(jié)

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • 用python打開攝像頭并把圖像傳回qq郵箱(Pyinstaller打包)

    用python打開攝像頭并把圖像傳回qq郵箱(Pyinstaller打包)

    這篇文章主要介紹了用python打開攝像頭并把圖像傳回qq郵箱,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-05-05
  • Python中利用算法優(yōu)化性能的技巧分享

    Python中利用算法優(yōu)化性能的技巧分享

    這篇文章主要為大家詳細(xì)介紹了Python中12個可以利用算法優(yōu)化性能的技巧,文中的示例代碼簡潔易懂,具有一定的借鑒價值,有需要的小伙伴可以了解下
    2025-04-04
  • 關(guān)于Tensorflow中的tf.train.batch函數(shù)的使用

    關(guān)于Tensorflow中的tf.train.batch函數(shù)的使用

    本篇文章主要介紹了關(guān)于Tensorflow中的tf.train.batch函數(shù)的使用,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-04-04
  • Python3實現(xiàn)zip分卷壓縮過程解析

    Python3實現(xiàn)zip分卷壓縮過程解析

    這篇文章主要介紹了Python3實現(xiàn)zip分卷壓縮過程解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2019-10-10
  • Pandas拼接concat使用方法

    Pandas拼接concat使用方法

    當(dāng)我們需要將兩個Pandas DataFrame對象合并為一個時,就需要使用Pandas拼接函數(shù),本文主要介紹了Pandas拼接concat使用方法,感興趣的可以了解一下
    2023-12-12
  • python使用jpype導(dǎo)入多個Jar的異常問題及解決

    python使用jpype導(dǎo)入多個Jar的異常問題及解決

    這篇文章主要介紹了python使用jpype導(dǎo)入多個Jar的異常問題及解決方案,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-12-12
  • 在pytorch中實現(xiàn)只讓指定變量向后傳播梯度

    在pytorch中實現(xiàn)只讓指定變量向后傳播梯度

    今天小編就為大家分享一篇在pytorch中實現(xiàn)只讓指定變量向后傳播梯度,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-02-02
  • 詳解django使用include無法跳轉(zhuǎn)的解決方法

    詳解django使用include無法跳轉(zhuǎn)的解決方法

    這篇文章主要介紹了詳解django使用include無法跳轉(zhuǎn)的解決方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-03-03
  • Python讀取圖像并顯示灰度圖的實現(xiàn)

    Python讀取圖像并顯示灰度圖的實現(xiàn)

    這篇文章主要介紹了Python讀取圖像并顯示灰度圖的實現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-12-12
  • PyCharm軟件無法安裝lxml庫的問題及解決

    PyCharm軟件無法安裝lxml庫的問題及解決

    這篇文章主要介紹了PyCharm軟件無法安裝lxml庫的問題及解決,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-01-01

最新評論

神农架林区| 凉山| 旅游| 轮台县| 蒲江县| 太仓市| 玛多县| 怀集县| 仲巴县| 瑞昌市| 民丰县| 鄂尔多斯市| 米泉市| 太仆寺旗| 天峨县| 且末县| 保定市| 西乌| 确山县| 禹州市| 瑞昌市| 图们市| 海南省| 塔河县| 逊克县| 额尔古纳市| 普陀区| 台东市| 渭南市| 米泉市| 宜阳县| 呼伦贝尔市| 塘沽区| 新津县| 清水河县| 酒泉市| 旬邑县| 嘉禾县| 呼和浩特市| 保德县| 东平县|