簡體   English   中英

django中pk = request.user和pk = request.user.id的結果相同

[英]Same result for pk=request.user and pk=request.user.id in django

class MyUser(User):
    job = ...
    city = ....

MyUser.objects.get(pk=request.user)MyUser.objects.get(pk=request.user.id)給出了相同的結果。 doc ,pk必須是int。 但是request.user是一個對象。 為什么對象和用戶ID的查詢是相同的?

編輯:我知道request.user是對象,但我想知道為什么結果是相同的。

提前致謝

這是設計 - 如果將模型對象作為參數傳遞給查詢,則與傳遞其主鍵相同。

如果這不是行為,則需要傳遞pk,或者是錯誤,這只會令人討厭。

感謝rebus對源代碼的引用: https//code.djangoproject.com/browser/django/trunk/django/db/models/fields/related.py#L175

暫無
暫無

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

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