Как создать форму обновления в django без создания нового представления или страницы?

Я хочу создать форму обновления, которая будет отслеживать завершение учебника, в models.py есть completed = models.BooleanField, который пользователь должен проверить, чтобы сделать учебник завершенным, но я не хочу создавать другую страницу или представление для этой функции, как я могу сделать это в представлении tutorialDetail?

views.py

def programmingLanguageTutorial(request, prglangcat_slug, prg_slug ):
    prglangtut = ProgrammingLanguageTutorial.objects.get(slug=prg_slug, prglangcat=prglangcat)

    # Save Learning Progress/ mark as complete
    if request.method == "POST":
        complete_form = MarkTopicAsCompleteForm(request.POST)
        if complete_form.is_valid():
            complete_form.save()
            return redirect('base:tutorial-page', prglangcat.slug, prglangtut.slug)
    else:
        complete_form = MarkTopicAsCompleteForm()
    
    context = {

        'complete_form': complete_form,
    }
    return render(request, 'base/tutorial-page.html', context)

urls.py

from django.urls import path
from base import views

app_name = 'base'

urlpatterns = [
        path('getting-started/<prglangcat_slug>/<prg_slug>/', views.programmingLanguageTutorial, name="tutorial-page"),
]

Вернуться на верх