Reputation: 316
views.py
def RealStateView(request):
form = RealStateForm(request.user)
forms.py
class RealStateForm(forms.ModelForm):
def __init__(self, *args, **kwargs):
request = kwargs.pop('request')
super(RealStateForm, self).__init__(*args, **kwargs)
self.fields['user_id'].initial = request.user.id
class Meta:
model = RealState
exclude = ["owner"]
fields = '__all__'
def clean_acquisition_value(self):
message = self.cleaned_data['acquisition_value']
if message < 10:
raise ValidationError('No puede ser cero')
return message
the error says:
Exception Type: KeyError
Exception Value: 'request'
I've tried other ways without success results.. Any idea?
Upvotes: 0
Views: 423
Reputation: 799240
You aren't passing a keyword argument called "request" to the constructor. Instead, you are passing a positional argument with the value of request.user
.
form = RealStateForm(request=request)
Upvotes: 2