2017-09-15 9 views
0

我想将音频文件存储在模型elementsound中属性'soundsrc'下。在django表中保存音频文件(模型)

models.py(代码段)

class elementsound(models.Model): 
    cdid=models.IntegerField() 
    soundsrc=models.FileField() 
    sounddesc=models.CharField(max_length=20) 

我如何做到这一点:models.py的一部分下面给出? settings.py中有什么变化?请详细解释。

回答

0

设置MEDIA_ROOTMEDIA_URL在你settings.py

MEDIA_ROOT = os.path.join(BASE_DIR, 'media') 
MEDIA_URL = '/media/' 

在你urls.py,添加:

from django.conf import settings 
from django.conf.urls.static import static 

urlpatterns = [ 
    # ... the rest of your URLconf goes here ... 
] + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT) 

确保有media目录根目录。

如果你想在表单中上传图片,请务必在template使用enctype="multipart/form-data"

<form action="" method="post" enctype="multipart/form-data"> 

此外,还要确保在views,使用:

form = Form(request.POST, request.FILES) 

它将工作。

+0

其完成方式与图像完全相同! – Shefali

+0

是的,'图像'和'音频'都是'media_files',所以它们将被存储为媒体文件,所有你需要改变的地方都在你的'templates'中以便访问这些文件,对于图像,我们使用''标签在模板和音频中,使用'

+0

这里FileField()会被正确使用吗?是否会有任何参数? – Shefali