簡體   English   中英

如何在沒有數據庫的情況下制作自定義表單 - DJANGO

[英]how to make custom form without database - DJANGO

所以我想上傳文件但只發送到本地存儲而不是數據庫。 但我不知道如何制作自定義表格。

突然,這是我的 models.py :

from django.db import models

class Audio_store(models.Model):
    record=models.FileField(upload_to='mp3/')

表格.py:

from django import forms 
from .models import Audio_store

class AudioForm(forms.ModelForm):
    class Meta:
        model = Audio_store

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('audio', views.Audio_store),
]

if settings.DEBUG: #add this
    urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
            fields= ['record']

html:

<form method="POST" enctype="multipart/form-data">
                            {% csrf_token %}
                            {{form}}
                            <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>
                            </form>

Django 有forms.ModelForm需要 DB 模型和forms.Form可以在沒有任何模型的情況下使用。

https://docs.djangoproject.com/en/4.0/topics/forms/#the-form-class

from django import forms

class YourForm(forms.Form):
    upload_file = forms.FileField()

對於文件輸入,請參閱https://docs.djangoproject.com/en/4.0/ref/forms/fields/#django.forms.FileField

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM