2013-02-13 34 views
1

我試圖使用最近開源的django-import-export通過管理員導入一些數據,我需要選擇自定義日期格式。如何使用django-import-export爲字段定義管理導入格式

它的工作,但有問題/更好的方法呢?

admin.py:

from import_export.admin import ImportExportMixin, ImportExportModelAdmin 
from import_export import resources 

from .models import Enrolment 

class EnrolmentResource(resources.ModelResource): 

    class Meta: 
     model = Enrolment 
     fields = ('id','source','firstname','surname','date_of_birth', 
        'bonus','status','tracking_comments') 

     widgets = { 
       'date_of_birth': {'format': '%d/%m/%Y'}, 
       } 

class EnrolmentAdmin(ImportExportMixin, admin.ModelAdmin): 

    def get_resource_class(self): 
     if not self.resource_class: 
      return EnrolmentResource 
     else: 
      return self.resource_class 

admin.site.register(Enrolment, EnrolmentAdmin) 
+0

你能提供進口的一些工作示例與ADMIN進出口?我不知道在插入前我應該在哪裏實現一些額外的邏輯。 – andi 2014-03-26 08:24:07

+2

@andi我認爲你需要使用[導入導出資源](https://django-import-export.readthedocs.org/en/latest/getting_started.html#base-modelresource),但是如果這樣會讓你失望,爲什麼不在這裏發佈問題?另外,我有一些運氣在github上搜索項目的例子,所以試着在github上搜索'from import_export import resources' – Kerridge0 2014-04-30 16:13:33

+0

@ Kerridge0好主意來得到這樣的例子 - 謝謝 – Alveoli 2014-07-28 13:01:16

回答

8

按照與this代碼示例,你應該做這樣的事情:

# ... 
class EnrolmentResource(resources.ModelResource): 
# ... 
class EnrolmentAdmin(ImportExportMixin, admin.ModelAdmin): 
    resource_class = EnrolmentResource 
# ... 
admin.site.register(Enrolment, EnrolmentAdmin) 
+0

現在爲什麼我沒有想到這個!謝謝 – Kerridge0 2013-10-11 16:13:50

相關問題