Фильтр булевых полей API Django REST в наборе запросов (например, filter(is_published=True) )
Я буду фильтровать is_published=1 в представлении REST API. Я хочу получать только опубликованные статьи. И я использую базу данных MongoDB.
models.py:
class Post(models.Model):
id = models.UUIDField(primary_key=True, default=uuid.uuid4, editable=False)
title = models.CharField(max_length=500)
content = RichTextUploadingField(max_length=10000)
is_publish = models.BooleanField(default=0)
created_date = models.DateField(auto_now_add=True, null=True, blank=True, editable=False)
.
.
.
view.py (полагаю, ошибка здесь):
class PostList(generics.ListAPIView):
serializer_class = PostSerializer
permission_classes = [permissions.IsAuthenticated]
filter_backends = [filters.SearchFilter]
search_fields = ['content', 'title']
def get_queryset(self):
queryset = Post.objects.filter(is_published=True).order_by("-created_date")
return queryset
serializers.py:
from .models import Post
from rest_framework import serializers
class PostSerializer(serializers.ModelSerializer):
class Meta:
model = Post
exclude = ['author']
код моей ошибки:
DatabaseError at /post/list/
No exception message supplied
/Редактировать и отметить: Почему всегда отрицательное голосование? Почему? Почему? ПОЧЕМУ? Я просто задал вопрос :(
)