簡體   English   中英

Django - 查看另一個用戶的配置文件 - QuerySet 錯誤“匹配的查詢不存在”

[英]Django - view another user's profile - QuerySet Error 'matching query does not exist'

我正在嘗試在 django 上建立一個基本博客,在那里可以查看任何其他用戶的個人資料(暫時簡單,我會在適當的時候更新 perms)。

我已嘗試對其進行設置,以便 url /testuser/將您帶到username = 'testuser'的用戶個人資料。 url 似乎直接沒問題,但是,我收到 QuerySet 錯誤'matching query does not exist'

我知道 'testuser' 存在,因為我可以在終端中使用相同的 arguments 訪問它,就像在下面的 views.py 中的get_queryset中使用的一樣: CustomUser.objects.get(username='testuser') 因此,我認為我在views.py 或類似文件中使用get_queryset一定有問題。

代碼如下。 提前感謝您的幫助。

視圖.py

from django.views.generic.detail import DetailView
from users.models import CustomUser


class ProfileView(DetailView):
    template_name = 'profiles/self_profile.html'

    def get_queryset(username):
        return CustomUser.objects.get(username=username)

    def get_slug_field(self):
        return username

網址.py

urlpatterns = [
    path('<str:slug>', ProfileView.as_view(), name='self_profile'),
]

提前感謝您的幫助。

解決了。

下面的代碼:

class ProfileView(DetailView):
    template_name = ...
    model = CustomUser
    slug_field = 'username'
    context_object_name = 'profile' # for referencing in template

暫無
暫無

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

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