簡體   English   中英

如何從 django 中的用戶模型獲取 id

[英]How to get id from User model in django

我有以下代碼:

user=User.objects.get(username=uid)

我通過 url "/profile/showprofile/{{post.author}}" 傳遞 uid 的值。 我的 post.author 包含值為“dean88”。

運行表單並單擊帶有上述 url 的鏈接時。 我收到一條錯誤消息,指出基數為 10 "dean88" 的 int 文字無效

但是當我去 python shell 並給出: user=User.objects.get(username='dean88') 我仍然得到同樣的錯誤。 只有當我輸入用戶的 id 作為整數時才會出現錯誤。 比如,user=User.objects.get(username=2)。

可能是什么問題以及如何避免它?

您當前正在為您的 url kwarg 獲取“dean88”值,因為您將 post.author 的字符串表示形式傳遞給它,即用戶名。 使用“/profile/showprofile/{{post.author.pk}}”來傳遞實際的用戶 ID。

>>> from django.contrib.auth.models import User
>>> user = User.objects.filter(username='paolocooper12').first()
>>> print(user)
>>> print(user.id)

這就是你在 python manage.py shell 中的做法

暫無
暫無

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

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