Как сделать кнопку загрузки песни mp3 django
Итак, я новичок в использовании django. мой backend проект использует python. и я хочу сделать кнопку html для выбора песни с компьютера, чтобы загрузить ее (но я не использую базу данных), чтобы обработать ее.
вот мой код models.py :
from django import forms
from django.db import models
class Audio_store(models.Model):
record=models.FileField(upload_to='documents/')
class Meta:
db_table='Audio_store'
Код forms.py :
from django import forms
from .models import *
class AudioForm(forms.ModelForm):
class Meta:
model=Audio_store
кодviews.py :
from MusicLockApp.forms import AudioForm
def Audio_store(request):
if request.method == 'POST':
form = AudioForm(request.POST, request.FILES or None)
if form.is_valid():
form.save()
return HttpResponse('SUKSES BRUH')
else:
form = AudioForm()
return render(request, 'homepage.html', {'form' : form})
кодurls.py :
from django.contrib import admin
from django.conf.urls import url
from . import views
from django.contrib.staticfiles.urls import staticfiles_urlpatterns
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('audio', views.Audio_store),
]
urlpatterns += staticfiles_urlpatterns()
fields=['record']
добавьте settings.py :
STATIC_URL = '/static/'
STATICFILES_DIRS = (
os.path.join(BASE_DIR, 'assets'),
)
MEDIA_URL = '/mp3/'
MEDIA_ROOT = os.path.join(BASE_DIR, 'mp3')
и мой html код :
<div class="row" style="margin-right: 10px;">
<form action="audio" method="post" enctype="multipart/form-data">
{% csrf_token %^}
{{ form }}
<a type="button" 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>
</a>
</form>
</div>