Я пытаюсь использовать массовый загрузчик в моей среде разработки, и у меня возникают проблемы. Здесь ошибка я получаю:GAE Python bulk uploader дает ошибку: «ImportError: No module named model»
File "volume_loader.py", line 3, in <module>
import model
ImportError: No module named model
Я в моем каталоге приложения, называется «ЦСИ», когда я запускаю эту команду:
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 я определил «Volume», который является то, что я пытаюсь импортировать:
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?
вы можете смешать дб и ОПРС в том же хранилище, как и к хранилищу данных, это все те же (или я так понимаю) под крышки , Таким образом, может быть стоит загрузить их как .db-модели в volumeloader, а затем просто использовать их через .ndb. –
Спасибо за предложение Paul, однако, прежде чем я его прочитал, я закончил просто преобразование своего CSV в json, используя какой-либо онлайн-инструмент. Затем я настраиваю скрипт для загрузки в json, а затем разбираю его и создаю объекты оттуда. Это хорошо работает на местном уровне. Надеюсь, это сработает, когда я пойду на производство. –