[英]Filtering many-to-many relationthip
我為django 3
使用rest-framwork
制作 api
我有一個具有多對多關系的模型。
然后,現在我想對多對多使用過濾器
在models.py
class Text(models.Model):
t_id = models.CharField(unique=True,null=False,max_length=20)
t_text = models.TextField(null=True)
issues = models.ManyToManyField(Issue) # It is many-to-many relationship
pub_date = models.DateTimeField('date published')
def __str__(self):
return self.t_id
class Issue(models.Model):
name = models.CharField(unique=True,max_length=255)
aka = models.CharField(max_length=2000,blank=True)
def __str__(self):
return self.name
在serializer.py
class TextFilter(filters.FilterSet):
t_text = filters.CharFilter(lookup_expr='contains') # it works
issues = filter.***Filter # How should I do here??
class Meta:
model = Text
fields = ('t_text','issues')
默認情況下ModelMultipleChoiceFilter
用於 ManyToManyField:
class TextFilter(filters.FilterSet):
t_text = filters.CharFilter(lookup_expr='contains') # it works
issues = filter.ModelMultipleChoiceFilter(
field_name='issues__uuid',
queryset=Issue.objects.all(),
)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.