如何将非CRUD操作添加到django管理员

时间:2013-10-22 16:13:15

标签: python django django-admin

我需要为我的Django应用程序创建一个简单的CRUD界面。 Django管理员做了我需要的90%,但我有一些不太合适的事情。

假设我有一个File模型和一个Validator模型。除了CRUD他们之外,我还需要能够将文件发送到验证器进行验证。这不是数据库操作。将文件发送到验证器涉及在验证器队列上调度文件。稍后(几分钟或几小时),当验证器完成时,将在数据库中记录该事实。

在UX视图中,这自然属于文件管理页面,作为选择验证器和按钮的下拉列表。有没有办法自然地将其添加到管理员?

(我是django新手,如果这是一个愚蠢的问题,我道歉。)

1 个答案:

答案 0 :(得分:1)

这是一个非常普遍的问题。管理员允许您以几乎任何方式扩展它。我个人首先看看如何创建packages (apps) in Django

您可以通过多种方式扩展管理员,admin actions,其他应用,自定义信息中心以覆盖模板等等。仅举几例。

还有很多软件包已经实现this

对于文件的任务处理,请查看Celery。 Celery是一个异步任务队列/作业队列系统。

更多阅读:Customizing Django Admin Interface functionality