1

我想过滤特定查询集的操作。

到目前为止,我正在通过在所需模型上生成模型流来获取数据。

model_stream(FillingSystem)

我想扩展这个功能并有这样的东西

model_stream(FillingSystem.objects.filter(client__slug='my-slug')) 

或者

model_stream(FillingSystem.objects.filter(client=Client.objects.get(slug='my-slug'))) 

这个模型看起来像这样:

class FillingSystem(models.Model):
    client = models.ForeignKey('accounts.Client')

如何通过相关的 slug 字段过滤流?

4

1 回答 1

3

看来您可以将过滤器传递**kwargs

model_stream(FillingSystem, filling_system__client__slug='my-slug')

您的内容在哪里targetGenericForeignKey您可以随意选择其他内容)。

您可能必须声明与Action模型的反向关系:

from django.contrib.contenttypes.fields import GenericRelation
from actstream.models import Action

class FillingSystem(models.Model):
    client = models.ForeignKey('accounts.Client')
    stream_actions = GenericRelation(
                         Action,
                         content_type_field='target_content_type'
                         object_id_field='target_object_id'
                         related_query_name='filling_system')
于 2016-01-10T18:03:22.850 回答