У меня достаточно опыта работы с PHP-фреймворками и Python для написания сценариев, поэтому сейчас я перехожу к Pyramid.
Я хотел бы знать, каков «правильный» способ запуска сценария вПирамида.То есть, как я должен настроить его так, чтобы он был частью приложения и имел доступ к конфигурации и, следовательно, к базе данных, но не работал через paster (или любой другой WSGI).
В качестве примера, скажем, у меня естьвеб-приложение, которое, пока пользователь находится в автономном режиме, получает обновления Facebook через веб-сервис.Я хочу написать скрипт для опроса этого сервиса и сохранить его в базе данных, готовой к следующему входу в систему.
Как мне сделать это с точки зрения:
- Добавление переменных в INI-файл
- Правильный запуск скрипта
Я понимаю основы модулей и пакетов Python;однако я не совсем понимаю настройку Конфигуратора / Пастера / пакета, в которой я подозреваю, что ответ лжив.
Спасибо
Обновление:
Спасибо, это похоже начто я ищуЯ отмечаю, что вы должны следовать определенной структуре (например, иметь атрибуты summary и parser) и что функция с именем command () всегда будет запускаться.Мой тестовый код теперь выглядит примерно так:
class AwesomeCommand(Command):
max_args = 2
min_args = 2
usage = "NAME"
# These are required
summary = "Say hello!"
group_name = "My Package Name"
# Required:
parser = Command.standard_parser(verbose=True)
def command(self):
# Load the config file/section
config_file, section_name = self.args
# What next?
Теперь я застрял в том, как получить настройки самостоятельно.Например, в init.py вы можете сделать это:
engine = engine_from_config(settings, 'sqlalchemy.')
Что мне нужно сделать, чтобы преобразовать файл конфигурации в настройки?
РЕДАКТИРОВАТЬ:(Более простой) способ сделать это в Pylons здесь: Запустить контроллер Pylons как отдельное приложение?