簡體   English   中英

無法使用我創建的用戶登錄django的管理頁面

[英]Can't log in admin page of the django using the user i created

我做了django教程所說的,但我仍然無法登錄localhost:8000 / admin /使用我創建的用戶。 我檢查數據庫,沒有用戶名'admin'。 我創建了用戶:

from django.contrib.auth.models import User
u = User.objects.get(username__exact='john')
u.set_password('new password')
u.save()

誰能幫助我? 請。

syncdb通常創建/更新數據庫,因此從您的語句中:

我檢查數據庫,沒有用戶名'admin'

我知道你必須以某種方式創建你的數據庫。 第一次運行syncdb時,系統會要求您創建超級用戶。 在那里你應該插入你的憑據。

但是,如果你丟失了這部分,你可以在以后使用django shell:

python manage.py shell

這將打開一個加載了django環境的python shell。 在該shell中創建admin用戶,如下所示:

from django.contrib.auth.models import User
u = User(username='admin', is_superuser=True, is_staff=True)
u.set_password('admin')
u.save()

請注意,* is_staff *必須為true才能使新用戶能夠在管理區域中登錄,並且* is_superuser *也必須為true才能使用戶擁有所有權限。

然后轉到localhost:8000 / admin /並使用新的“admin”用戶登錄。

我建議你再次通過整個程序,因為你顯然錯過了一些東西。 剛剛從頭開始。 你會看到你錯過了什么。

PS如果您有用戶名john,則不能使用用戶名admin的同一用戶。

我假設你可能已經省略了運行python manage.py syncdb

從本教程第二部分開始 ,您需要執行以下三項操作才能啟用管理站點。 你錯過了其中任何一個嗎?

  1. 取消注釋INSTALLED_APPS設置中的“django.contrib.admin”。

  2. 運行python manage.py syncdb。 由於您已將新應用程序添加到INSTALLED_APPS,因此需要更新數據庫表。

  3. 編輯您的mysite / urls.py文件並取消注釋引用管理員的行 - 總共有三行要取消注釋。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM