I am trying to use the recently open-sourced django-import-export to import some data via the admin, and I needed to choose a custom date format.

It works, but are there problems/better ways of doing it?

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)
有帮助吗?

解决方案

Following to this code example, you should do something like this:

# ...
class EnrolmentResource(resources.ModelResource):
# ...
class EnrolmentAdmin(ImportExportMixin, admin.ModelAdmin):
    resource_class = EnrolmentResource
# ...
admin.site.register(Enrolment, EnrolmentAdmin)
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top