форма django: ModelForm не указан класс модели - PullRequest
1 голос
/ 08 марта 2012

Я работаю над существующим проектом и хочу добавить форму Django на страницу. Приложение называется беспроводным, и в беспроводном каталоге у меня есть forms.py, с некоторым кодом вроде:

from django import forms    
class WirelessScanForm(forms.ModelForm):
        time = forms.DateTimeField(label='When', widget=AdminSplitDateTime())
        prob = forms.ChoiceField(choices=[x.sniffer.plug_ip for x in
                         SurveyRouterSniffer.objects.all()])

В views.py я делаю следующее:

from wireless import forms

form = forms.WirelessScanForm()
return render_response(request, 'wireless/crack.html',
            { 'scheduledScans' : scheduledScans,
              'form': form})

Я очень новичок в django, поэтому любая помощь будет благодарна.

Ответы [ 2 ]

12 голосов
/ 08 марта 2012

Я действительно не знаю, как ошибка может быть понятнее.Для формы модели вам нужно указать класс модели.

Если это не форма, основанная на модели, не наследуйте от forms.ModelForm, просто используйте обычный forms.Form.

3 голосов
/ 08 марта 2012

Вам необходимо добавить Meta-класс в ваши формы. МоделФорм, определяющий, на какой модели будет основываться формат.

https://docs.djangoproject.com/en/dev/topics/forms/modelforms/#django.forms.ModelForm

class WirelessScanForm(ModelForm):
    class Meta:
        model = WirelessScan
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...