SuspiciousFileOperation:存储找不到可用的文件名

SuspiciousFileOperation: Storage can not find an available filename for

我在创建此模型的实例时保存头像后出现此错误(我没有重写任何基本的 django 模型方法):

BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))

def conference_directory_path(instance, filename):
return BASE_DIR+'/static/dialogues/conferences/conference_{0}/avatar/{1}'.format(instance.id, filename)

class Dialogue(models.Model):
    ...
    avatar = models.ImageField(upload_to=conference_directory_path, blank=True)
    ...

怎么了?

您正在尝试在 avatar 字段中存储超过 100 个字符的值 default max_length for file fields

我不确定为什么要在头像字段中存储绝对路径,您只需在设置文件中设置 MEDIA_ROOT,然后 upload_to 将存储相对路径 MEDIA_ROOT 只要。

您可以这样做,也可以在您的文件字段中添加更高的 max_length