簡體   English   中英

django import-export:意外的關鍵字參數

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM