Как сделать bulk_create в DRF Serializer для разделения экземпляров django
Я получаю массив урлов и цель состоит в том, чтобы записать каждый урл как отдельный экземпляр модели с другими постоянными параметрами, одинаковыми для всех урлов
модель django:
class BlockedUrl(models.Model):
url = models.URLField()
date_add = models.DateField(auto_now_add=True)
class Meta:
app_label = 'main'
db_table = 'blocked_url'
ordering = ['-date_add']
django view:
from main.models import BlockedUrl
from api.serializers import BlockedUrlSerializer
class BlockedUrlsViewSet(GenericViewSet, CreateModelMixin):
queryset = BlockedUrl.objects.all()
serializer_class = BlockedUrlSerializer
permission_classes = (AllowAny,)
django serializer:
class BlockedUrlSerializer(Serializer):
urls = ListField(child=URLField(), min_length=1, max_length=1024)
# create - to do (iter the list of urls and insert separately into model with one transaction)
def create(self, validated_data):
crawler = validated_data['crawler']
blocked_urls = [BlockedUrl(url=url) for url in validated_data['urls']]
return BlockedUrl.objects.bulk_create(blocked_urls)
# update - raise not implemented error
def update(self, instance, validated_data):
raise NotImplementedError
но это не работает, так как я получаю AttributeError: 'list' object has no attribute 'urls'