我正在尝试使用Silex设置Doctrine迁移,但我无法入门。 文档说它需要加载并注册控制台命令,但我不确定在silex中注册哪个提供程序或在哪里放置控制台命令。
这是我的文件结构
Top
- app
- src
- Alpha
- Controller
- Migration
- Model
- View
- alpha.php
- vendor
- bin
- doctrine
- doctrine.php
- web
- composer.json
- composer.lock
- migrations.yml
这是我的composer.json
{
"autoload": {
"psr-0": {
"SilexApplication": "app/",
"Alpha": "src/"
}
},
"require": {
"silex/silex": "1.0.*@dev",
"twig/twig": "1.*",
"doctrine/dbal": "2.3.*",
"doctrine/migrations": "@dev",
"doctrine/orm": "2.3.*"
},
"require-dev": {
}
}
任何帮助都会得到满足,谢谢
答案 0 :(得分:3)
在doc中没有说明,但是控制台被假定为Symfony的控制台应用程序,如果你检查doctrine的命令它们是sf命令的子代。 所以,你需要一个控制台应用程序http://symfony.com/doc/current/components/console/introduction.html 并且需要添加一些迁移命令:http://docs.doctrine-project.org/projects/doctrine-migrations/en/latest/reference/introduction.html 另外,不要忘记db config,你可以使用--db-configuration --configuration params或者使用Configuration类传递它(查找子类)。