FieldError at /chat/search/ Unsupported lookup 'groupchat_name' for CharField or join on the field not permitted

I'm trying to be able to search chat groups by looking up the chatroom name. I'm using Django Q query...

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) 

I tried to add the Traceback but it was too much code for this post. Any help you can provide it would be greatly appreciate it!

Вернуться на верх