我想过滤特定查询集的操作。
到目前为止,我通过在所需模型上生成模型流来获取数据。
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')
如何通过相关的段塞字段过滤流?
答案 0 :(得分:3)
您似乎只能pass your filters作为**kwargs
:
model_stream(FillingSystem, filling_system__client__slug='my-slug')
其中target
是您内容的GenericForeignKey
(随意选择from the others)。
您可能必须声明与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')