[英]django import-export: unexpected keyword argument
我正在嘗試使django的導出/導入工作(django-import-export.readthedocs.org)
問題是它希望每個文件頭中的“ id”都可以標識它。 我添加了before_import函數,但它給了我以下錯誤:
TypeError("before_import() got an unexpected keyword argument 'file_name'",)
Traceback (most recent call last):
File "/usr/local/lib/python2.7/dist-packages/import_export/resources.py", line 340, in import_data
self.before_import(dataset, real_dry_run, **kwargs)
TypeError: before_import() got an unexpected keyword argument 'file_name'
這是來自管理員的代碼
from django.contrib import admin
from django.db import models
# Register your models here.
from import_export import resources
from import_export import fields
from keywords.models import Book
from import_export.admin import ImportExportModelAdmin
class BookResource(resources.ModelResource):
def before_import(self, dataset, dry_run):
if dataset.headers:
dataset.headers = [str(header).lower().strip() for header in dataset.headers]
if 'id' not in dataset.headers:
dataset.headers.append('id')
class Meta:
model = Book
fields = ('name', 'price',)
class BookAdmin(ImportExportModelAdmin):
resource_class = BookResource
pass
admin.site.register(Book, BookAdmin)
快速瀏覽文檔會發現您的方法簽名是錯誤的...
來自文檔
before_import(dataset, dry_run, **kwargs)
您的代碼看起來應該是
def before_import(self, dataset, dry_run, **kwargs):
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.