Django:两个相关模型的搜索栏

时间:2018-09-08 03:58:21

标签: django model

我有以下两种型号:

class Topic(models.Model):
    alpha = models.CharField(max_length=200)
    date_added = models.DateTimeField(auto_now_add=True)


class Entry(models.Model):
    topic = models.ForeignKey(Topic, on_delete=models.CASCADE)
    gamma = models.TextField()
    date_added = models.DateTimeField(auto_now_add=True)

我想同时在变量alpha(来自模型Topic)和gamma(来自模型Entry)上创建搜索栏,因此,当使用“ distinct”功能时,不会有重复项。到目前为止,我可以对其中一个进行搜索,但不能同时对两个搜索进行创建。

def my_view(request):
    '''Page displaying all topics'''
    topics = Topic.objects.all()
    entries = Entry.objects.all()

    #Search bar    
    query = request.GET.get("q")
    if query:
        topics = topics.filter(Q(alpha__icontains=query)).distinct()                   

谢谢。

0 个答案:

没有答案