假设我有一个模型Message
。在管理员中,我需要通过提交/上传消息文件来添加消息,而不是像通常那样发布消息字段。过程是,我上传文件,将其发送到处理程序,解析文件,进行一些进一步处理,然后在数据库中添加一个条目。
因此,我为ModelAdmin
创建了一个自定义表单(使用form = CustomForm)
分配FileField
并覆盖save_model()
以免保存任何内容。但是,这不是正确的方式,因为文档清楚地提到ModelAdmin的save_model()方法不是为了否决的目的。那么这是什么方法呢?
有人建议使用一个额外的按钮指向自定义视图,虽然它确实可行,但从逻辑上讲,我仍然添加消息,因此额外的视图看起来并不自然。