Ошибка FieldError в /chat/search/ Неподдерживаемый поиск 'groupchat_name' для CharField или join в поле, которое не разрешено
Я пытаюсь найти группы в чате по названию комнаты чата. Я использую Q-запрос Django...
models.py
class ChatGroup(models.Model):
group_name = models.CharField(max_length=128, unique=True, default=shortuuid.uuid)
groupchat_name = models.CharField(max_length=128, null=True, blank=True)
picture = models.ImageField(upload_to='uploads/profile_pictures', default='uploads/profile_pictures/default.png', blank=True)
about = models.TextField(max_length=500, blank=True, null=True)
admin = models.ForeignKey(User, related_name='groupchats', blank=True, null=True, on_delete=models.SET_NULL)
users_online = models.ManyToManyField(User, related_name='online_in_groups', blank=True)
members = models.ManyToManyField(User, related_name='chat_groups', blank=True)
is_private = models.BooleanField(default=False)
def __str__(self):
return self.group_name
views.py
from django.db.models import Q
class ChatSearch(View):
def get(self, request, *args, **kwargs):
query = self.request.GET.get('chat-query')
chatroom_list = ChatGroup.objects.filter(
Q(group_name__groupchat_name__icontains=query)
)
context = {
'chatroom_list': chatroom_list
}
return render(request, 'chat/search.html', context)
Я пытался добавить обратную трассировку, но для этого поста было слишком много кода. Я был бы очень признателен за любую помощь, которую вы можете оказать!
According to the OP in a comment:
using a class based view was triggering a query when I opened the page. I had to create a new page with just the input query then use the query results on a separate page