useallfive / doctrine-web-console
Doctrine Web Console 服务提供者
v0.1.1
2014-01-13 22:29 UTC
Requires
- dflydev/doctrine-orm-service-provider: 1.0.*@dev
- silex/silex: ~1.1
This package is not auto-updated.
Last update: 2024-09-23 15:59:51 UTC
README
Doctrine Web Console 允许通过网页浏览器执行 doctrine 控制台命令。这在需要在不允许 shell 访问的环境中执行命令时特别有用(例如 Google App Engine)。
安装
通过 composer
php composer.phar require useallfive/doctrine-web-console dev-master
将控制器提供者挂载到 /console 路径。
<?php $app = new Silex\Application(); // ... $app->mount( '/console', new \UseAllFive\DoctrineWebConsole\ConsoleControllerProvider() ) ; $app->run();
一切就绪!访问您网站的 /console
URL 即可使用。
指定命令路径
如果没有指定命令路径,则将在控制台控制器当前工作目录(您的项目网页目录)中执行命令。虽然这对于大多数命令来说是可以的,但对于需要路径的命令来说并不理想。您可以在 ConsoleControllerProvider
构造函数的第一个参数中指定路径。
<?php $app = new Silex\Application(); // ... $app->mount( '/console', new \UseAllFive\DoctrineWebConsole\ConsoleControllerProvider(__DIR__) ) ; $app->run();
添加命令
将您自己的 Doctrine 命令添加到网页控制台非常简单。我们将以 Doctrine DataFixtures Command 为例。
ConsoleControllerProvider
构造函数的第二个参数接受一个 Symfony\Component\Console\Command\Command
实例数组,然后将其传递给 Doctrine 的 ConsoleRunner
。
<?php $app = new Silex\Application(); // ... $app->mount( '/console', new \UseAllFive\DoctrineWebConsole\ConsoleControllerProvider( __DIR__, array( new \UseAllFive\Command\LoadDataFixturesDoctrineCommand(), ) ) ) ; $app->run();