Django ArrayField
Model
class ProductTag(BaseModel): product = models.ForeignKey(Product, on_delete=models.CASCADE) tag_list = ArrayField(models.TextField(), null=True)
Filter
class ProductTagView(APIView): def get(self, request): tag_list = request.GET.get('tag_list') if not tag_list: raise ParseError() tag_list = re.split(r'\s*,\s*', tag_list) product_tag_list = ProductTag.objects.filter(tag_list__contains=tag_list) product_tag_se = ProductTagSerializer(product_tag_list, many=True) return Response(product_tag_se.data)
product_tag_list = ProductTag.objects.filter(reduce(operator.and_, (Q(tag_list__contains=x) for x in tag_list)))
출처
관련 문서
Plugin Backlinks: 아무 것도 없습니다.