У меня в настоящее время есть некоторые проблемы, заставляющие ModelForms вести себя согласованно, используя несколько баз данных.
У меня есть проект, который использует несколько баз данных. Каждая модель находится в одной или другой БД, поэтому мне не нужно загружать из одной и сохранять в другой.
sale = Sale.objects.using(db_alias).get(pk=sale_id)
form = SaleForm(request.POST, instance=sale)
if form.is_valid():
form.save();
выше работает отлично.
sale = Sale.objects.using(db_alias).get(pk=sale_id)
ssh = History.objects.using(db_alias).get(pk=sale.history_id)
form = SaleForm(request.POST, instance=sale)
sshForm = HistoryForm(request.POST, instance=ssh)
if form.is_valid():
form.save();
sshnew = sshForm.save(commit=False)
выше не работает нормально ... form.save () счастлив. sshForm.save () жалуется на невозможность подключиться к базе данных (так как по умолчанию используется значение «default», которое является просто заполнителем)
Я не могу понять, почему формы и sshForm работают по-разному, если они заполнены одинаково.