django admin - экспорт в формате csv - PullRequest
6 голосов
/ 22 ноября 2010

Я использую следующий Django Snippet для экспорта результатов страницы администратора change_list в csv http://djangosnippets.org/snippets/790/

У меня это работает, но в настоящее время я могу получить его только для экспорта полей, определенных вlist_display переменная.

Функция принимает список (названный fields, см. Ниже) как переменную, которая определяет, какие поля вы хотите экспортировать, но я не могу понять, как передать это вфункция.Это связано с тем, что функция вызывается с использованием шаблона url, который не содержит переменную fields.

def admin_list_export(request, model_name, app_label, queryset=None, fields=None, list_display=True): 

1 Ответ

3 голосов
/ 22 ноября 2010

Вы должны иметь возможность передать параметры функции в определении URL :

(r'^admin/(?P<app_label>[\d\w]+)/(?P<model_name>[\d\w]+)/csv/',\    
 'util.csv_view.admin_list_export', {'fields': ['myfield1', 'myfield2']}),

Вы также можете передать list_display = False в функцию, и она будет игнорировать настройку list_display в ModelAdmin и использовать все поля, которые есть в модели!

...