Django FilePathField引发文件未找到错误

时间:2019-12-03 13:53:03

标签: django python-3.x django-models

我已经定义了一个使用FilePathField(allow_files=False, allow_folders=True)的Django模型,该模型应允许在模型中定义一个必需的(非可选的)文件系统目录。如果我尝试在管理界面中添加新模型,则会出现找不到文件的错误。我所有其他以相同方式注册的模型都可以正常工作。如果我使用CharField()代替FilePathField()来保存文件系统目录路径,则只需定义一个默认值,例如CharField(default='')

如何使用FilePathField字段修复模型?

1 个答案:

答案 0 :(得分:1)

我遇到了同样的问题,错误的原因是 django 尝试扫描目录以获取将在 html 小部件中显示为选项的文件列表。 解决方案很少。

  • 如果您不介意限制用户可以添加的路径,只需将 path=/some/dir 添加到 FilePathField
  • 如果您不想限制路径但不关心通过管理员更新路径的能力,只需在 editable=False 中设置 FilePathField
  • 如果两者都需要,您可以将此特定字段的 admin 中的小部件替换为经典文本输入。