こんにちは、変更されたフォームメソッドを使用しようとして__init__
いますが、次のエラーが発生しています。
TypeError
__init__() got multiple values for keyword argument 'vUserProfile'
UserProfile
フィールドに到達するには、フォームに渡す必要がありdbname
ます。これが解決策(フォームコード)だと思います。
class ClienteForm(ModelForm):
class Meta:
model = Cliente
def __init__(self, vUserProfile, *args, **kwargs):
super(ClienteForm, self).__init__(*args, **kwargs)
self.fields["idcidade"].queryset = Cidade.objects.using(vUserProfile.dbname).all()
POSTを使用しないコンストラクターの呼び出しClienteForm()
は成功し、正しい形式が表示されます。しかし、フォームが送信され、コンストラクターがPOSTで呼び出されると、前述のエラーが発生します。