[英]How to filter the objects related to foreign key model in django Views.py
我有這樣的models.py:
class Subject(models.Model):
sub = models.CharField(max_length=200)
slug = models.SlugField(unique=True)
created_on = models.DateTimeField(auto_now_add=True)
class Post(models.Model):
sub = models.ForeignKey(Subject, on_delete=models.CASCADE)
file_name = models.CharField(max_length=50,blank=True)
url = models.CharField(max_length=800, unique=True)
網址.py
path('view/<subj>/', views.PostDetail, name='post_detail'),
視圖.py
def PostDetail(request, subj):
content = Post.objects.get(sub=subj)
但是當我從 url 將 subj 作為 sig 傳遞時出現此錯誤,
invalid literal for int() with base 10: 'sig'
如何在 Post model 中獲取與查詢主題相關的所有對象,即“子”?
在你的urls.py
中給出 subj 類型,如果 subj 是 String 添加<str:***>
:
path('view/<str:subj>/', views.PostDetail, name='post_detail'),
視圖.py:
def PostDetail(request, subj):
content = Post.objects.filter(sub__sub=subj)
使用過濾器搜索 Post.sub,因為 sub 是 ForeignKey,所以使用 sub__sub。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.