Я пытаюсь написать очень простое приложение django. Я не могу заставить его показать свою форму внутри моего шаблона.django новичок. Проблемы с ModelForm
<form ...>
{{form.as_p}}
</form>
Это абсолютно ничего не показывает. Если я добавлю кнопку отправки, она только покажет это.
Должен ли я объявлять объект формы, который наследует формы. Форм? Не могу ли это сделать с помощью ModelForms?
[ДОПОЛНЕНО] Решено! (Прошу прощения за тратить свое время)
В моих URLs файл я имел:
(r'login/$',direct_to_template, {'template':'register.html'}
Перешел:
(r'login/$','portal.views.register')
И да, я чувствую себя ужасно.
фона:
У меня есть модель для студентов, и у меня есть страница регистрации. Когда к нему обращаются, он должен отображать текстовое поле, запрашивающее имя ученика. Если студент завершает это поле, он сохраняет его.
#models.py
class Student(models.Model):
name = models.CharField(max_length =50)
#forms.py
class StudentForm (forms.ModelForm):
class Meta:
model = Student
Итак, вот мое мнение:
def register(request):
if request.method == 'POST':
form = StudentForm(request.POST)
if form.is_valid():
form.save()
return render_to_response('/thanks/')
else:
student = Student()
form = StudentForm(instance =student)
return render_to_response('register.html',{'form':form})
Вам не нужно передавать экземпляр для создания нового студента. Я не уверен, что это то, что делает форму неработоспособной, но она определенно не нужна. –
My bad: Я использовал функцию direct_to_template в моем файле urls.py Спасибо всем! – Tom