我正在Django建立一个网络应用程序。 我有一个表单将文件发送到views.py。
视图:
@login_required(login_url=login_url)
def addCancion(request):
if request.method == 'POST':
form2 = UploadSong(request.POST, request.FILES)
if form2.is_valid():
if(handle_uploaded_song(request.FILES['file'])):
path = '%s' % (request.FILES['file'])
ruta = "http://domain.com/static/canciones/%s" % path
usuario = Usuario.objects.get(pk=request.session['persona'])
song = Cancion(autor=usuario, cancion=ruta)
song.save()
return HttpResponse(ruta)
else:
return HttpResponse("-3")
else:
return HttpResponse("-2")
else:
return HttpResponse("-1")
我只想上传MP3文件,但我不知道如何制作这个过滤器。 我尝试了一个名为“ContentTypeRestrictedFileField(FileField):”的类,但它不起作用。
如何在views.py中获取文件类型?
谢谢!
使用
import mimetypes, magic
:例如,将扩展名设为“.pdf”
https://docs.djangoproject.com/en/dev/topics/forms/#processing-the-data-from-a-form
http://docs.python.org/2/library/mimetypes.html#mimetypes.MimeTypes.types_map_inv
https://github.com/ahupp/python-magic#usage
你的意思是:
您还可以使用表单中的clean()方法来验证它。因此,您可以拒绝不是mp3的文件。像这样的:
相关问题 更多 >
编程相关推荐