Как устранить ошибку круговой зависимости в моделях django
У меня есть 2 приложения в моем проекте django
1.приложение для клиентов 2.приложение для сделок
В приложении «Клиент» есть следующие таблицы в models.py
1.customer_table 2.trade_plan_table 3.service_plan_table 4.customer_payments
В приложении trades есть следующая таблица в models.py
1.trade_details_table 2.service_details_table
Ниже приведены мои зависимости:
1.service_plan_table has foreign key ref to service_details_table
2.customer_payments имеет внешний ключ, ссылающийся на customer_table, trade_plan_table, service_plan_table
таблица «Детали_торговли» имеет внешний ключ к таблице «Заказчик»
service_details_table has foreign key ref to customer_table
Поскольку существует зависимость от модели клиента к модели сделки и наоборот, я сталкиваюсь с ошибкой круговой зависимости. Вместо импорта я попробовал использовать 'строковую ссылку', но это не помогло.
Может ли кто-нибудь подсказать, как решить эту проблему
?Не видя самих моделей, я предполагаю, что вам, вероятно, просто нужно создать ленивую ссылку (https://docs.djangoproject.com/en/5.1/ref/models/fields/#lazy-relationships ) с помощью строк на модели, на которые указывают поля fk, а не импортировать модель и использовать класс непосредственно:
class TradeDetail(models.Model):
customer = models.ForeignKey('customers.Customer', on_delete=models.CASCADE)
вместо
from customers.models import Customer
class TradeDetail(models.Model):
customer = models.ForeignKey(Customer, on_delete=models.CASCADE)