Python 具有中间表的多对多字段不得对称

Python 具有中间表的多对多字段不得对称,python,django,django-models,Python,Django,Django Models,我正试图找出如何在我的项目中存储城市之间的价格,这样我就可以轻松地使用它,管理员可以轻松地更改这些价格 我决定根据这一点创建一个通过模型的,它被称为Ride 但当我执行makemigrations时,Django返回: va_app.City.rides:(fields.E332)具有中间表的多对多字段不得对称 你知道怎么做吗 PS>我唯一想要的是能够简单地访问价格(如City.price(City)或其他东西,并且管理员能够更改价格。错误很明显,您不能将M2M与中间表和对称=真,它必须是对称=

我正试图找出如何在我的项目中存储城市之间的价格,这样我就可以轻松地使用它,管理员可以轻松地更改这些价格

我决定根据这一点创建一个通过模型的
,它被称为
Ride

但当我执行
makemigrations
时,Django返回:

va_app.City.rides:(fields.E332)具有中间表的多对多字段不得对称

你知道怎么做吗


PS>我唯一想要的是能够简单地访问价格(如
City.price(City)
或其他东西,并且管理员能够更改价格。

错误很明显,您不能将M2M与
中间
表和
对称=真
,它必须是
对称=假

因此,请尝试:

rides = models.ManyToManyField('self', through='Ride', symmetrical=False)

但是,我认为您的模型结构有问题,您有两个M2M字段指向
self
?我不确定
骑乘
模型的目的是什么,但是这个模型应该只有
FKs
城市

技巧是,仍然设置为symmetric=False,但它可以用作symmetric,ch请注意:
rides = models.ManyToManyField('self', through='Ride', symmetrical=False)