mutagen read django中的TemporaryUploadedFile

问题描述:

我想在使用Mutagen将它们保存到磁盘之前验证我的mp3。然而,使用诱变剂时,我只能打开一个文件,如果它在磁盘上。有没有解决的办法?我希望能够做到这一点:mutagen read django中的TemporaryUploadedFile

files = request.FILES 
mp3 = files.get('mp3') 
mp3_audio = MP3(mp3) 

给我的错误:

TypeError: invalid file: <TemporaryUploadedFile: test.mp3 (audio/mpeg)> 

一个TemporaryUploadedFile文件对象是已经在磁盘上,在临时文件而保留的目录。要分析它的有效性,调用一个方法来获得完整的路径:

files = request.FILES 
mp3_temp = files.get('mp3') 
mp3_audio = MP3(mp3_temp.temporary_file_path()) 

看到TemporaryUploadedFile.temporary_file_path()

+0

哇,如果我知道这个功能,我会救自己,所以很多令人沮丧的时刻。 –

+0

再次,由于某种原因,Django现在不再返回一个TemporaryUploadedFile,而是一个InMemoryFile。有任何想法吗?它刚开始发生在随机和某些文件上。 –

+0

nvm,不得不在设置中删除内存文件处理程序 –