mpe*_*pet 12 php symfony laravel laravel-4
我正在使用 Artisan :: call('migrate'); 在Laravel控制器方法中,它在Laravel版本为4.1时工作.在使用composer update命令更新Laravel (并在composer.js中设置 "laravel/framework":"4.2.*")之后,这个控制器方法(因为这是其中唯一的命令)不再起作用.
我甚至在/app/config/app.php中添加了'cipher'=> MCRYPT_RIJNDAEL_256,如http://laravel.com/docs/upgrade#upgrade-4.2中所述.
那已经发生了:http://laravel.io/forum/06-02-2014-not-able-run-artisan-commands
当我将Artisan :: call('migrate')放入try/catch块控制器时,如下所示:
public function ArtMigr(){
try {
Artisan::call('migrate');
} catch (Exception $e) {
echo $e;
}
}
Run Code Online (Sandbox Code Playgroud)
我收到以下错误:
异常'ErrorException',消息'使用未定义的常量STDIN - 在D:\ htdocs\artisan_error\vendor\symfony\console\Symfony\Component\Console\Helper\QuestionHelper.php中假设为'STDIN':112堆栈跟踪:#0 D:\ htdocs\artisan_error\vendor\symfony\console\Symfony\Component\Console\Helper\QuestionHelper.php(112):Illuminate\Exception\Handler-> handleError(8,'使用undefine ...','D :\ htdocs\artis ...',112,Array)#1 D:\ htdocs\artisan_error\vendor\symfony\console\Symfony\Component\Console\Helper\QuestionHelper.php(49):Symfony\Component\Console\Helper\QuestionHelper-> doAsk(对象(Symfony\Component\Console\Output\NullOutput),对象(Symfony\Component\Console\Question\ConfirmationQuestion))#2 D:\ htdocs\artisan_error\vendor\laravel\framework\src\Illuminate\Console\Command.php(186):Symfony\Component\Console\Helper\QuestionHelper-> ask(对象(Symfony\Component\Console\Input\ArrayInput),对象(Symfony\Component\Console\Output\NullOutput),对象(Symfony的\分量\控制台\问\确认 ationQuestion))#3 D:\ htdocs\artisan_error\vendor\laravel\framework\src\Illuminate\Console\ConfirmableTrait.php(21):Illuminate\Console\Command-> confirm('你真的......) #4 D:\ htdocs\artisan_error\vendor\laravel\framework\src\Illuminate\Database\Console\Migrations\MigrateCommand.php(59):Illuminate\Database\Console\Migrations\MigrateCommand-> confirmToProceed()
5 D:\ htdocs\artisan_error\vendor\laravel\framework\src\Illuminate\Console\Command.php(112):
Illuminate\Database\Console\Migrations\MigrateCommand-> fire()#6 D:\ htdocs\artisan_error\vendor\symfony\console\Symfony\Component\Console\Command\Command.php(252):Illuminate\Console\Command- > execute(Object(Symfony\Component\Console\Input\ArrayInput),Object(Symfony\Component\Console\Output\NullOutput))#7 D:\ htdocs\artisan_error\vendor\laravel\framework\src\Illuminate\Console\Command.php(100):Symfony\Component\Console\Command\Command-> run(对象(Symfony\Component\Console\Input\ArrayInput),对象(Symfony\Component\Console\Output\NullOutput))#8 D:\htdocs\artisan_error\vendor\laravel\framework\src\Illuminate\Console\Application.php(96):Illuminate\Console\Command-> run(对象(Symfony\Component\Console\Input\ArrayInput),Object(Symfony\Component\Console\Output\NullOutput))#9 [内部函数]:Illuminate\Console\Application-> call('migrate')#10 D:\ htdocs\artisan_error\vendor\laravel\framework\src\Illuminate\Foundation\Artisan.php(57):call_user_func_array(Array,Array)#11 D:\ htdocs\artisan_error\vendor\laravel\framework\src\Illuminate\Support\Facades\Facade.php(208):Illuminate\Foundation\Artisan - > __ call('call',Array)#12 D:\ htdocs\artisan_error\vendor\laravel\framework\src\Illuminate\Support\Facades\Facade.php(208):Illuminate\Foundation\Artisan-> call('migrate')#13 D:\ htdocs\artisan_error\app\controllers\HomeController.php(160) :Illuminate\Support\Facades\Facade :: __ callStatic('call',Array)#14 D:\ htdocs\artisan_error\app\controllers\HomeController.php(160):Illuminate\Support\Facades\Artisan :: call(' migrate')#15 D:\ htdocs\artisan_error\app\controllers\HomeController.php(145):HomeController-> InstallDatabaseStructure()#16 D:\ htdocs\artisan_error\app\controllers\HomeController.php(127):HomeController - > WriteDatabaseCredentials('localhost','laravel-aplikac ...','root','')#17 [内部函数]:HomeController-> postTestDatabaseConnection()#18 D:\ htdocs\artisan_error\vendor\laravel\framework\src\Illuminate\Routing\Controller.php(231):call_user_func_array(Ar ray,Array)#19 D:\ htdocs\artisan_error\vendor\laravel\framework\src\Illuminate\Routing\ControllerDispatcher.php(93):Illuminate\Routing\Controller-> callAction('postTestDatabas ...',Array)
20 D:\ htdocs\artisan_error\vendor\laravel\framework\src\Illuminate\Routing\ControllerDispatcher.php(62):
Illuminate\Routing\ControllerDispatcher-> call(Object(HomeController),Object(Illuminate\Routing\Route),'postTestDatabas ...')#21 D:\ htdocs\artisan_error\vendor\laravel\framework\src\Illuminate\Routing\Router.php(930):Illuminate\Routing\ControllerDispatcher-> dispatch(Object(Illuminate\Routing\Route),Object(Illuminate\Http\Request),'HomeController','postTestDatabas ...')#22 [内部] function]:Illuminate\Routing\Router-> Illuminate\Routing {closure}()#23 D:\ htdocs\artisan_error\vendor\laravel\framework\src\Illuminate\Routing\Route.php(105):call_user_func_array(Object(闭包),数组)#24 D:\ htdocs\artisan_error\vendor\laravel\framework\src\Illuminate\Routing\Router.php(996):Illuminate\Routing\Route-> run(Object(Illuminate\Http\Request) )#25 D:\ htdocs\artisan_error\vendor\laravel\framework\src\Illuminate\Routing\Router.php(964):Illuminate\Routing\Router-> dispatchToRoute(Object(Illuminate\Http\Request))
26 D:\ htdocs\artisan_error\vendor\laravel\framework\src\Illuminate\Foundation\Application.php(738):
照明\路由\路由器 - >讯(对象(照亮\ HTTP \请求))
27 D:\ htdocs\artisan_error\vendor\laravel\framework\src\Illuminate\Foundation\Application.php(708):
照亮\基金会\应用程序 - >讯(对象(照亮\ HTTP \请求))
28 D:\ htdocs\artisan_error\vendor\laravel\framework\src\Illuminate\Session\Middleware.php(72):
Illuminate\Foundation\Application-> handle(Object(Illuminate\Http\Request),1,true)#29 D:\ htdocs\artisan_error\vendor\laravel\framework\src\Illuminate\Cookie\Queue.php(47): Illuminate\Session\Middleware-> handle(Object(Illuminate\Http\Request),1,true)#30 D:\ htdocs\artisan_error\vendor\laravel\framework\src\Illuminate\Cookie\Guard.php(51): Illuminate\Cookie\Queue-> handle(Object(Illuminate\Http\Request),1,true)#31 D:\ htdocs\artisan_error\vendor\stack\builder\src\Stack\StackedHttpKernel.php(23):照亮\ Cookie\Guard-> handle(Object(Illuminate\Http\Request),1,true)#32 D:\ htdocs\artisan_error\vendor\laravel\framework\src\Illuminate\Foundation\Application.php(606):Stack\StackedHttpKernel-> handle(Object(Illuminate\Http\Request))#33 D:\ htdocs\artisan_error\public\index.php(49):Illuminate\Foundation\Application-> run()#34 {main}
一切都在我身边做得好吗?
composer.js包含:
{
"name": "laravel/laravel",
"description": "The Laravel Framework.",
"keywords": ["framework", "laravel"],
"license": "MIT",
"require": {
"laravel/framework": "4.2.*",
"way/generators": "dev-master"
},
"autoload": {
"classmap": [
"app/commands",
"app/controllers",
"app/models",
"app/database/migrations",
"app/database/seeds",
"app/tests/TestCase.php"
]
},
"scripts": {
"post-install-cmd": [
"php artisan clear-compiled",
"php artisan optimize"
],
"post-update-cmd": [
"php artisan clear-compiled",
"php artisan optimize"
],
"post-create-project-cmd": [
"php artisan key:generate"
]
},
"config": {
"preferred-install": "dist"
},
"minimum-stability": "stable"
}
Run Code Online (Sandbox Code Playgroud)
Yas*_*lek 21
是的,实际上最后一个版本存在问题,以前的所有来源都不起作用,应该使用:
Artisan::call('migrate', array('--force' => true));
Run Code Online (Sandbox Code Playgroud)
测试和工作正常.
| 归档时间: |
|
| 查看次数: |
5863 次 |
| 最近记录: |