2016-07-15 3 views
1

Я работаю с импортом-экспортом Django, чтобы я мог получать csv-файлы из своей базы данных. Эти файлы csv имеют некоторые поля, которые не имеют значения, поскольку они изменяются, когда элементы помещаются в базу данных, и поэтому я не хочу их в таблице.Django import-export exclude not working

Я следил за документами для импорта-экспорта, но, похоже, не мог корректно исключить эти поля. в моем admin.py файле у меня есть:

from import_export import resources 
from import_export.admin import ImportExportModelAdmin 

class ArtAdmin(ImportExportModelAdmin): 
    list_display = ['id', 'name', 'category', 'type', 'agent', 'authenticate', ] 
    search_fields = ('name', 'category', 'artist', 'id', 'authenticate',) 
    list_filter = ["authenticate"] 
    actions = [approve_art, reject_art] 

class ArtResource(resources.ModelResource): 

    class Meta: 
     model = Art 
     exclude = ('authenticate',) 

Когда я иду в питона manage.py оболочки и получить его, чтобы распечатать CSV-то, как я ожидаю, что это будет, однако, когда я использую питона manage.py runerver и затем экспортировать его. Я все равно увижу столбец аутентификации, кто-нибудь знает, как это исправить?

ответ

2

Кажется, вы забыли связать класс ресурса с вами modeladmin

класса ArtResource (resources.ModelResource):

class Meta: 
    model = Art 
    exclude = ('authenticate',) 

class ArtAdmin(ImportExportModelAdmin): 
    resource_class = ArtResource 

    list_display = ['id', 'name', 'category', 'type', 'agent', 'authenticate', ] 
    search_fields = ('name', 'category', 'artist', 'id', 'authenticate',) 
    list_filter = ["authenticate"] 
    actions = [approve_art, reject_art] 
+0

Спасибо большое, я очень ценю это! Быстрый вопрос ... В разделе импорта он запрашивает все поля в правильном порядке, поскольку некоторые из них будут перезаписаны, если их поместить в базу данных, нет смысла иметь их в нем, так что вы знаете, есть ли способ исключить некоторые поля ввода? – Gary

+0

использование exclude сделает это даже для импорта –