Почему не отображаются поля CharField? Django 4.1.1
Разрабатываю сайт на заказ еще с июня месяца. Сначала разработка шла гладко, а затем я столкнулась с проблемой - не отображаются поля ввода данных на главной странице. Подскажите пожалуйста, в чем может быть дело.
urls.py
from .views import home_page, HWCreate
from django.conf import settings
from django.conf.urls.static import static
from django.contrib import admin
from django.urls import path
urlpatterns = [
path('admin/', admin.site.urls),
path('', home_page),
path('homework/', HWCreate.as_view())
]
if settings.DEBUG:
urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
views.py
from django.http import HttpResponse
from django.shortcuts import render
from django.views.generic.edit import CreateView
from pytesseract import pytesseract
from .forms import HWForm
from .models import Homework
class HWCreate(CreateView):
model = Homework
form_class = HWForm
extra_context = {'homeworks': Homework.objects.all()}
template_name = 'HWCreate.html'
success_url = '/homework/'
def index(request):
return HttpResponse("Добро пожаловать!")
def home_page(request):
data = Homework.objects.all()
return render(request, 'home_page.html', {'data': data})
models.py
from django.db import models
class Homework(models.Model):
author = models.CharField(max_length=100, blank=True)
subject = models.CharField(max_length=100, blank=True)
grade = models.CharField(max_length=100, blank=True)
page = models.CharField(max_length=100, blank=True)
task_number = models.CharField(max_length=100, blank=True)
task = models.ImageField(upload_to='images/')
def __str__(self):
return self.task_number
forms.py
from django.forms import ModelForm
from .models import Homework
class HWForm(ModelForm):
class Meta:
model = Homework
fields = '__all__'
шаблоны HTML:
home_page.html:
% for b in data %}
<a href="{{ b.homework.url }}">{{ b.author }}</a>
<a href="{{ b.homework.url }}">{{ b.subject }}</a>
<a href="{{ b.homework.url }}">{{ b.grade }}</a>
<a href="{{ b.homework.url }}">{{ b.page }}</a>
<a href="{{ b.homework.url }}">{{ b.task_number}}</a>
<img src="{{ b.task.url }}">
{% endfor %}
<form method="post" enctype="multipart/form-data">
{% csrf_token %}
<input type="file" name="myfile1">
<button type="submit">Проверить задание</button>
</form>
HWCreate.html
<form method="POST" enctype="multipart/form-data">
{% csrf_token %}
{{ form.as_p }}
<button type="submit">Проверить задание</button>
</form>
{% for b in homeworks %}
<p>{{ b.author }}</p>
<p>{{ b.subject }}</p>
<p>{{ b.grade }}</p>
<p>{{ b.page }}</p>
<p>{{ b.task_number }}</p>
<img src="{{ b.task.url }}">
<p> {{ b.task.width }}x{{ b.task.height }}</p>
<br/>
{% endfor %}