Artisan:: вызов ('migrate') не работает после обновления Laravel до 4.2

Я использую Artisan:: call ('migrate'); в методе контроллера Laravel, и он работает, пока версия Laravel была 4.1. После обновления Laravel с помощью композитор обновление команда (и параметр "laravel / framework": "4.2.*" В композитора.js) этот метод контроллера (поскольку это единственная команда в нем) больше не работает.

Я даже добавил 'cipher' = > MCRYPT_RIJNDAEL_256 in/app/config / app.PHP как указано в 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;
        }   

}

и я получаю следующую ошибку:

исключение '' с сообщение 'константы STDIN-предполагаемый "STDIN" в D:htdocsartisan_errorvendorsymfonyconsoleSymfonyComponentConsoleHelperQuestionHelper.php: 112 Трассировка стека: #0 D:htdocsartisan_errorvendorsymfonyconsoleSymfonyComponentConsoleHelperQuestionHelper.на PHP(112): ОсветитеExceptionHandler - >handleError(8, ' использование undefine...', 'D:htdocsartis...', 112, Array) #1 D:htdocsartisan_errorvendorsymfonyconsoleSymfonyComponentConsoleHelperQuestionHelper.на PHP(49): SymfonyComponentConsoleHelperQuestionHelper->doAsk(Object(SymfonyComponentConsoleOutputNullOutput), Объект (SymfonyComponentConsoleQuestionConfirmationQuestion)) #2 D:htdocsartisan_errorvendorlaravelframeworksrcIlluminateConsoleCommand.на PHP(186): SymfonyComponentConsoleHelperQuestionHelper->ask(Object(SymfonyComponentConsoleInputArrayInput), Объект (SymfonyComponentConsoleOutputNullOutput), Объект (SymfonyComponentConsoleQuestionConfirmationQuestion)) #3 D:htdocsartisan_errorvendorlaravelframeworksrcIlluminateConsoleConfirmableTrait.на PHP(21): ОсветитеConsoleCommand - >confirm ('вы действительно w...') #4 D:htdocsartisan_errorvendorlaravelframeworksrcIlluminateDatabaseConsoleMigrationsMigrateCommand.на PHP(59): ОсветитеDatabaseConsoleMigrationsMigrateCommand - >confirmToProceed ()

5 D:htdocsartisan_errorvendorlaravelframeworksrcIlluminateConsoleCommand - ... PHP(с 112):

осветитьбаза данныхконсольмиграцииMigrateCommand - >огонь () #6 D:htdocsartisan_errorvendorsymfonyconsoleSymfonyComponentConsoleCommandCommand.на PHP(252): Загорается команды->консолиВыполнить(объект(на SymfonyкомпонентконсоливводArrayInput), Объект (SymfonyComponentConsoleOutputNullOutput)) #7 D:htdocsartisan_errorvendorlaravelframeworksrcIlluminateConsoleCommand.php (100): В Symfonyкомпонентконсоликомандукоманды->выполнить(объект(в SymfonyкомпонентконсоливводArrayInput), Объект (SymfonyComponentConsoleOutputNullOutput)) #8 D:htdocsartisan_errorvendorlaravelframeworksrcIlluminateConsoleApplication.на PHP(96): Загорается команды->консолизапуск(объект(на SymfonyкомпонентконсоливводArrayInput), Объект (SymfonyComponentConsoleOutputNullOutput)) #9 [внутренний функция]: подсветкаконсольприложение - > вызов ('migrate') #10 D:htdocsartisan_errorvendorlaravelframeworksrcIlluminateFoundationArtisan.на PHP(57): call_user_func_array(массив, массив) #11 D:htdocsartisan_errorvendorlaravelframeworksrcIlluminateSupportFacadesFacade.на PHP(208): IlluminateFoundationArtisan - > _ _ call ('вызов', массив) #12 D:htdocsartisan_errorvendorlaravelframeworksrcIlluminateSupportFacadesFacade.на PHP(208): IlluminateFoundationArtisan - > вызов ('migrate') #13 D:htdocsartisan_errorappcontrollersHomeController.на PHP(160): Подсветкаподдержкафасадыфасад:: _ _ callStatic ('call', Array) #14 D:htdocsartisan_errorappcontrollersHomeController.на PHP(160): Осветитьподдержкафасадыремесленник:: вызов ('migrate') #15 D:htdocsartisan_errorappcontrollersHomeController.на PHP(145): HomeController - >InstallDatabaseStructure () #16 D:htdocsartisan_errorappcontrollersHomeController.на PHP(127): HomeController - >WriteDatabaseCredentials ('localhost', 'что Laravel-aplikac...', 'root',") #17 [внутренняя функция]: HomeController - >postTestDatabaseConnection () #18 D:htdocsartisan_errorvendorlaravelframeworksrcIlluminateRoutingController.на PHP(231): call_user_func_array(массив, массив) #19 D:htdocsartisan_errorvendorlaravelframeworksrcIlluminateRoutingControllerDispatcher.на PHP(93): ОсветитеRoutingController - >callAction ('postTestDatabas...', Array)

20 D:htdocsartisan_errorvendorlaravelframeworksrcIlluminateRoutingControllerDispatcher.php (62):

подсветкамаршрутизацияControllerDispatcher - >вызов (объект (HomeController), Object (IlluminateRoutingRoute), ' postTestDatabas...') #21 D:htdocsartisan_errorvendorlaravelframeworksrcIlluminateRoutingRouter.на PHP(930): ОсветитьмаршрутизациюControllerDispatcher - >dispatch (объект (осветитьмаршрутизациюмаршрут), Объект (ОсветитьHttpRequest), 'HomeController', 'postTestDatabas...') #22 [внутренняя функция]: Осветитьмаршрутизациюмаршрутизатор - >осветитьмаршрутизацию{закрытие} () #23 D:htdocsartisan_errorvendorlaravelframeworksrcIlluminateRoutingRoute.php (105): call_user_func_array (объект (закрытие), массив) #24 D:htdocsartisan_errorvendorlaravelframeworksrcIlluminateRoutingRouter.на PHP(996): Осветитьмаршрутизациюмаршрут - >выполнить (объект (осветитьHttpзапрос)) #25 D:htdocsartisan_errorvendorlaravelframeworksrcIlluminateRoutingRouter.на PHP(964): Осветитьмаршрутизациюмаршрутизатор- > dispatchToRoute (объект (осветитьHttpзапрос))

26 D:htdocsartisan_errorvendorlaravelframeworksrcIlluminateFoundationApplication - ... на PHP(738):

подсветкамаршрутизациямаршрутизатор - >отправка (объект (подсветкаHttpзапрос))

27 D:htdocsartisan_errorvendorlaravelframeworksrcIlluminateFoundationApplication.на PHP(708):

осветитьFoundationApplication - >dispatch (объект (осветитьHttpRequest))

28 D:htdocsartisan_errorvendorlaravelframeworksrcIlluminateSessionMiddleware - ... на PHP(72):

осветитьFoundationApplication - >handle (Object (осветитьHttpRequest), 1, true) #29 D:htdocsartisan_errorvendorlaravelframeworksrcIlluminateCookieQueue.на PHP(47): Осветитьсеанспромежуточное ПО - >дескриптор (объект (осветитьHttpзапрос), 1, true) #30 D:htdocsartisan_errorvendorlaravelframeworksrcIlluminateCookieGuard.на PHP(51): ОсветитьCookieQueue- > handle (объект (осветитьHttpRequest), 1, правда) #31 D:htdocsartisan_errorvendorstackbuildersrcStackStackedHttpKernel.php (23): ОсветитьCookieGuard - > handle (объект (осветитьHttpRequest), 1, Правда) #32 D:htdocsartisan_errorvendorlaravelframeworksrcIlluminateFoundationApplication.на PHP(606): StackStackedHttpKernel - > дескриптор (объект (осветитьHttpзапрос)) #33 D:htdocsartisan_errorpublicindex.на PHP(49): ОсветитеFoundationApplication - >run () #34 {main}

все сделано правильно с моей стороны?

композитор.Яш содержит:

{
    "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"
}

3 ответов


Да, есть проблема на самом деле с последней версии,все предыдущие источники не работают, надо использовать :

Artisan::call('migrate', array('--force' => true));

проверено и работает нормально.


Use of undefined constant STDIN кажется, ошибка Symfony, см. github.com/symfony/symfony/issues/10795.

A composer update должно исправить вашу проблему.


Я думаю, вы должны добавить '-n'=>true на ваш призыв

так как вы находитесь в производстве и "вы уверены, что вопрос уволен"

так это будет как

Artisan::call('migrate',array('-n'=>true));