Symfony propel:insert-sql с указанным пользователем?

Я использую Symfony 1.3.6 в Ubuntu Lucid.

Мои соединения с БД для Symfony сделаны с пользователем с ограниченными привилегиями (например, нет необходимости в CREATE или DROP) - в целях безопасности.

Я хочу иметь возможность запустить задачу propel propel:sql-insert от имени пользователя root, чтобы я мог создавать / удалять таблицы по желанию. Мозговой путь для этого - изменить config/database.yml и использовать имя root и pwd всякий раз, когда мне нужно выполнить эту задачу.

Разумнее было бы, если бы я мог передать пользователя в задачу import-sql. Кто-нибудь знает, как это сделать?

1 ответ

Решение

У меня нет 1.3 здесь; скорее 1.4, но заглянуть внутрь lib/vendor/symfony/lib/plugins/sfPropelPlugin/lib/task/sfPropelInsertSqlTask.class.php (фу!) возвращает следующий параметр, который вы можете передать - предположительно, тот же для 1.3:

Вы также можете использовать опцию --connection, если хотите загружать только операторы SQL для данного соединения.

Следовательно, это означает, что вы можете создать новое соединение в своем config/databases.yml которая специфична для задачи insert-sql (например, имя пользователя root, без пароля), а затем передаст это имя соединения при запуске задачи insert-sql.

Не проверено...:-)

Другие вопросы по тегам