GAE Python批量上传器给出错误:“ImportError:No module named model”

时间:2013-09-03 04:50:16

标签: python google-app-engine bulkloader

我正在尝试在我的开发环境中使用批量上传器而且我遇到了问题。这是我得到的错误:

  File "volume_loader.py", line 3, in <module>
    import model
ImportError: No module named model

当我运行此命令时,我在我的应用程序目录中,名为“src”:

appcfg.py upload_data --config_file=volume_loader.py --filename=lds_scriptures_volumes.csv --kind=Volume --url=http://localhost:8080/_ah/remote_api

这是我的volume_loader.py。 (它位于我的src目录中)

from google.appengine.ext import db
from google.appengine.tools import bulkloader
import model

class VolumeLoader(bulkloader.Loader):
    def __init__(self):
        bulkloader.Loader.__init__(self, 'Volume',
                                   [('volume_id', int),
                                    ('volume_title', str),
                                    ('volume_title_long', str),
                                    ('volume_subtitle', str),
                                    ('lds_org', str),
                                    ('num_books', int),
                                    ('num_chapters', int),
                                    ('num_verses', int)
                                   ])

loaders = [VolumeLoader]

在我的model.py文件中,我定义了一个“卷”,这就是我要导入的内容:

class Volume(Base):
  volume_id = ndb.IntegerProperty(required=True)
  volume_title = ndb.StringProperty(required=True)
  volume_title_long = ndb.StringProperty(required=True)
  volume_subtitle = ndb.StringProperty(required=True)
  lds_org = ndb.StringProperty(required=True)
  num_books = ndb.IntegerProperty(required=True)
  num_chapters = ndb.IntegerProperty(required=True)
  num_verses = ndb.IntegerProperty(required=True)

为什么无法从volume_loader找到模型?

1 个答案:

答案 0 :(得分:0)

嗯,我想我找到了答案,但看起来我不能使用批量上传器,因为我的对象使用的是ndb。

请参阅以下答案:

bulkloader not importing ndb.model

dowload app engine ndb entities via bulk exporter / bulk uploader