[Answered ]-ImageField django

1👍

✅

You need to pass both request.POST and request.FILES to the form:

from django.shortcuts import get_object_or_404


def class_article_create(request, URLcodenumber):
    if request.method == 'POST':
        code_number = get_object_or_404(Classes, codenumber=URLcodenumber)
        form = ArticleForm(request.POST, request.FILES)
        if form.is_valid():
            form.instance.codenumber = code_number
            form.instance.pub_date = date.today()
            form.save()
            return HttpResponseRedirect(f'/class/{URLcodenumber}')
    else:
        form = ArticleForm()
    return render(
        request,
        'blogpage/create_article.html',
        {
            'clsName': f'Параллель {URLcodenumber}',
            'codenumber': URLcodenumber,
            'form': form,
        },
    )

Note: Django’s DateTimeField [Django-doc]
has a auto_now_add=… parameter [Django-doc]
to work with timestamps. This will automatically assign the current datetime
when creating the object, and mark it as non-editable (editable=False), such
that it does not appear in ModelForms by default.

Leave a comment