Итак, я только начинаю работать с django и пытаюсь реализовать ModelForm. Однако что-то идет не так, поля ввода из модели не появляются в HTML, а кнопка отправки, реализованная в HTML, появляется. Я бы оценил это, если бы кто-нибудь мог сказать мне, где я делаю неправильно, или мог бы отослать меня к источнику, который помог бы мне.
form.py
from .models import Article
from django import forms
class Article_form(forms.ModelForm):
class Meta:
model = Article
fields = [
'title',
'content'
]
models.py
from django.db import models
# Create your models here.
class Article(models.Model):
title = models.CharField(max_length = 120)
content = models.TextField(max_length = None)
views.py
from django.shortcuts import render
from .forms import Article_form
from .models import Article
# Create your views here.
def create_article(request):
form = Article_form(request.POST or None)
if form.is_valid():
form.save()
form = Article_form()
context = {
'form': form
}
return render(request, "articles/form.html", context)
form.html
<form method="POST">{% csrf_token %}
{{ form.as_p }}
<input type="submit" value="OK">
</form>
index.html
<html>
<body>
<h2>This is a page</h2>
{% include 'articles/form.html' %}
</body>
</html>
Если вам нужна какая-либо другая информация, пожалуйста, сообщите мне!
Спасибо!
Edit:
просмотр для целевой страницы
from django.shortcuts import render
# Create your views here.
def home_view(request):
return render(request, 'index.html/')
urls.py (чего я еще даже не трогал)
from django.contrib import admin
from django.urls import path
from pages import views
urlpatterns = [
path('admin/', admin.site.urls),
path('', views.home_view),