我的模型允许上传的“文件名”大小不超过255个字符。如果它超过它崩溃。我需要的是“像省略号之类的东西,即大约225个字符之后的三个点(...),然后'显示文件的扩展名'。”
这是我的模型文件中的一个小代码,我认为这是影响点:
class Attachment(models.Model):
file = models.FileField(upload_to=get_upload_path, max_length=256,
storage=AttachmentsStorage() if AttachmentsStorage else None)
非常感谢任何帮助。 谢谢:))
答案 0 :(得分:2)
使用os.path.splitext()
拆分扩展程序:
if len(path) > 255:
path, ext = os.path.split(path)
path = path[:252-len(ext)] + '...' + ext
答案 1 :(得分:1)
我认为解决问题的一个好方法是重载方法AttachmentsStorage. get_valid_name
,它负责转换文件名。