diff --git a/scrapy_djangoitem/__init__.py b/scrapy_djangoitem/__init__.py index dc28cc8..6d7fa82 100644 --- a/scrapy_djangoitem/__init__.py +++ b/scrapy_djangoitem/__init__.py @@ -12,12 +12,18 @@ def __new__(mcs, class_name, bases, attrs): if cls.django_model: cls._model_fields = [] + cls._model_fields_m2m = [] cls._model_meta = cls.django_model._meta for model_field in cls._model_meta.fields: if not model_field.auto_created: if model_field.name not in cls.fields: cls.fields[model_field.name] = Field() cls._model_fields.append(model_field.name) + + for model_field_m2m in cls._model_meta.many_to_many: + if model_field_m2m.name not in cls.fields: + cls.fields[model_field_m2m.name] = Field() + cls._model_fields_m2m.append(model_field_m2m.name) return cls