Django admin操作 - exportascsv片段在添加到整个站点时不起作用,但在添加到单个模型时工作

时间:2012-08-01 08:30:18

标签: django django-admin

我正在尝试使用此snippet将管理模型导出为CSV文件 这样做很好:

将已下载的代码段添加为actions.py,并在任何应用的admin.py中写下以下代码

from actions import export_as_csv_action

class YourModelAdmin(admin.ModelAdmin):
    list_display = (...)
    list_filter = [...]
    actions = [export_as_csv_action("CSV Export", fields=['field1', 'field2'])]

上述方法正在运行,但在此方法中,我们必须分别将动作添加到每个模型。通过在该应用程序的admin.py中编写以下代码,还有另一种方法可以将操作添加到应用程序中的所有模型。

from django.contrib import admin

admin.site.add_action(export_as_csv_action, "export csv")

从上面的代码中,管理页面中显示了“export csv”操作,但是当我选择它并单击GO时,没有任何事情发生,只是页面被重定向到同一页面,你能告诉吗?我做错了什么?

1 个答案:

答案 0 :(得分:0)

您忘记了“export_as_csv_action()”调用中的括号:

from django.contrib import admin

admin.site.add_action(export_as_csv_action(), "export csv")