Использование двух полей ManyToMany в одних и тех же моделях при миграции
В моей модели есть два поля ManyToMany в одной модели.
class Item(models.Model):
additional_subcategories = models.ManyToManyField(SubCategory, related_name="additional_subcategories", blank=True)
subcategories = models.ManyToManyField(SubCategory, related_name="subcategories", blank=True)
Но когда я вызываю эти поля в миграции, они возвращают те же запросы.
def forwards_func(apps, schema_editor):
Item = apps.get_model("api", "Item")
db_alias = schema_editor.connection.alias
for item in Item.objects.using(db_alias).all():
print(item.additional_subcategories.all().query)
print(item.subcategories.all().query)
class Migration(migrations.Migration):
dependencies = [
('api', '0141_create_item_subcategories'),
]
operations = [
migrations.RunPython(forwards_func)
]
Печатается:
SELECT * FROM `api_subcategory` INNER JOIN `api_item_subcategories` ON (`api_subcategory`.`id` = `api_item_subcategories`.`subcategory_id`) WHERE `api_item_subcategories`.`item_id` = 1
SELECT * FROM `api_subcategory` INNER JOIN `api_item_subcategories` ON (`api_subcategory`.`id` = `api_item_subcategories`.`subcategory_id`) WHERE `api_item_subcategories`.`item_id` = 1
Что я делаю неправильно?