[英]matching query does not exist Django
謝謝你的時間。 我剛剛創建了一個鏈接到每個用戶的模型,盡管我無法從該模型中獲取 id 或他的任何其他字段的對象。 我在嘗試調用每個 user.Parceiros.object 時遇到問題,當我在 python shell 或我得到查詢不存在的項目中嘗試 Parceiros.objects.get(id=1) 時。 althgough 如果我嘗試 Parceiros.objects.filter(id=1) 它讓我得到想要的對象。
並收到此錯誤:parceirosview() 得到了意外的關鍵字參數“id”
views.py(我都試過):
def parceirosview(request, pk):
parc = get_object_or_404(Parceiros, id=pk)
context = {'parc': parc}
return render(request, 'parceiro.html', context)
def get_queryset(self):
return super().get_queryset().filter(parceiro__user=self.request.user)
模型.py:
get_user_model = User
class Parceiros (models.Model):
user = models.OneToOneField(User, on_delete=models.CASCADE)
nome = models.CharField(max_length=200)
endereco = models.TextField(max_length=400, blank=True)
responsavel = models.CharField(max_length=100)
tel = PhoneField(max_length=12)
created_at = models.DateTimeField(auto_now=True)
updated_at = models.DateTimeField(auto_now_add=True, blank=True)
ativo = models.BooleanField(default=False)
def __str__(self):
return '%s %s' % (self.user, self.nome)
def get_queryset(self):
queryset = super(Parceiros, self).get_queryset()
return queryset
在 urls.py-> urlpatterns 中:
path('parceiro/<int: pk>/', views.parceirosview, name="parceirosview")
在views.py中
def parceirosview(request, pk=None):
parc = get_object_or_404(Parceiros, id=pk)
return render(request, 'parceiro.html', {'parc': parc})
如果您想獲取相關用戶,只需在模板中調用:
{{ parc.user }}
要啟用來自用戶的反向調用以獲取 parc,只需在您的模型外鍵字段中定義一個 related_name 即可。
模型 -> 公園:
user = foreign_key(User, related_name="pracs", .....)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.