Тип ввода не отображается при использовании формы модели - DJANGO

Итак, я скопировал код modelsform с сайта https://ordinarycoders.com/blog/article/django-file-image-uploads

но когда я запускаю свой код, в инструментах разработчика нет input type="file". но когда я попробовал print class в models.py и forms.py, он работает. Я не знаю, почему нет input type="file".

вот что должно быть показано

вот что показывает мой веб

но когда я попытался дать print моей функции upload в views.py, внезапно она не хочет работать и error print

вот мой код views.py :

from django.shortcuts import render, redirect
from django.views.decorators.csrf import ensure_csrf_cookie
from .forms import AudioForm
from .models import Audio_store
from MusicLockApp.forms import AudioForm

@ensure_csrf_cookie
def homepage(request):
    # return HttpResponse('homepage')
    return render(request, 'homepage.html')

def decode(request):
    # return HttpResponse('about')
    return render(request, 'decode.html')

def upload(request):
    if request.method == 'POST':
        form = AudioForm(request.POST, request.FILES)
        if form.is_valid():
            form.save()
        return redirect('main:upload')
    form = AudioForm()
    audio = Audio_store.objects.all()
    return render(request=request, template_name='homepage.html', context={'form':form, 'audio':audio})

urls.py :

from django.contrib import admin
from django.conf.urls import url
from . import views
from django.urls import path, re_path
from django.conf import settings
from django.conf.urls.static import static


urlpatterns = [
    url(r'^admin/', admin.site.urls),
    url(r'^decode/$', views.decode),
    url(r'^$', views.homepage),
    path("upload", views.homepage, name="upload")
]

if settings.DEBUG: #add this
    urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)

<div class="col-md-6">
                      {% block content %}  

                      {% load crispy_forms_tags %} 
                        <div class="row" style="margin-top: 20px; margin-right: 10px;">
                            <button type="button" class="dsnupload">
                                <i class="large material-icons" style="font-size: 50pt; margin-top: 10px;">file_upload</i>
                                <p style="font-weight: bold; color: white;">Insert file password</p>
                            </button>
                        </div>
                        <br>
                        <div class="row" style="margin-right: 10px;">
                            <form method="POST" enctype="multipart/form-data">
                            {% csrf_token %}
                            {{form|crispy}}
                            <button type="submit" class="dsnupload">
                                <i class="large material-icons" style="font-size: 50pt; margin-top: 10px;">audiotrack</i>
                                <p style="font-weight: bold; color: white;">Insert file audio (mp3)</p>
                            </button>
                            <p id="message"></p>
                            </form>
                        </div>
                        <br>
                        <div class="row" style="margin-right: 10px;">
                            <div class="col-1">
                                <label class="labels" style="color: white;">Key:</label>
                                <button type="submit" class="dsnupload"></button>
                            </div>
                            <div class="col-11">
                                <input type="text" class="form-control" placeholder="insert your key here">
                            </div>
                            <br> <br>
                            <a class="dsnhide" type="button" href="#" role="button">Hide it!</a>
                        </div>
                        {% endblock %}
                    </div>

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