我正在尝试使用添加和显示用户书签(收藏夹)的功能。我做导游
目前的情况是:
用户书签已成功添加到数据库中
我无法显示用户添加的书签
下面我附上为用户添加书签的代码
型号.py
文章范本:
class Post(models.Model):
title = models.CharField(max_length=200, unique=True,)
slug = models.SlugField(max_length=200, unique=True,)
content = RichTextUploadingField()
def get_bookmark_count(self):
return self.bookmarkarticle_set.all().count() #
def __str__(self):
return self.title
抽象模型:
class BookmarkBase(models.Model):
class Meta:
abstract = True
user = models.ForeignKey(User, verbose_name="user")
def __str__(self):
return self.user.username
继承模型:
class BookmarkArticle(BookmarkBase):
class Meta:
db_table = "bookmark_article"
obj = models.ForeignKey(Post, verbose_name="article")
视图.py
class BookmarkView(View):
model = None
def post(self, request, pk):
user = auth.get_user(request)
bookmark, created = self.model.objects.get_or_create(user=user, obj_id=pk)
if not created:
bookmark.delete()
return HttpResponse(
json.dumps({
"result": created,
"count": self.model.objects.filter(obj_id=pk).count()
}),
content_type="application/json"
)
我试图在用户添加的模板中显示书签:
{% for bookmark in user.bookmarkarticle_set.all %}
{{ bookmark.post.title }}
{% endfor %}
没有输出
需要做什么才能显示用户添加的书签?
如果有任何帮助,我将不胜感激
您的帖子通过
BookmarkArticle
模型引用,名称为:obj
,因此请尝试在模板中使用bookmark.obj.title
,或者将字段名从obj
更改为post
相关问题 更多 >
编程相关推荐