Я хотел бы предложить те же категории сообщений на текущей странице, поэтому я пробую следующий код:
Мои просмотры:
def recipe(request, slug, message=''):
post = get_object_or_404(Post, slug=slug)
post_category = post.category.all() # get the categories of the post
posts_same_category = Post.objects.filter(
Q(category__name__icontains= post_category) # filter the same categories of the other posts
).filter(published=True).exclude(slug=slug) # exclude the current post and no publish posts
Мои модели:
class PostCategory(models.Model):
name = models.CharField(max_length=100)
def __str__(self):
return self.name
class Post(models.Model):
title = models.CharField(max_length=100)
slug = models.SlugField(max_length=250, null=True, blank=True)
category = models.ManyToManyField('PostCategory', blank=True)
mealtype = models.ManyToManyField('MealType', blank=True)
У меня ошибка на странице сведений о сообщении:
sub-select returns 2 columns - expected 1
Я думаю, что проблема с ManytoManyField, но что я делаю не так?
Заранее спасибо за вашу помощь!