Поля ввода Django ModelForm из Model не отображаются - PullRequest
0 голосов
/ 12 марта 2019

Итак, я только начинаю работать с 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),
...