2017-01-27 34 views
10

Tôi vừa nâng cấp Laravel 5.3 lên Laravel 5.4. Tôi đã đọc hướng dẫn nâng cấp được cung cấp bởi laravel, và mọi thứ đều tốt. Cho đến khi tôi cố gắng chạy Laravel Tinker và nó không hoạt động. Tôi đã làm theo hướng dẫn nâng cấp dành riêng cho phần Laravel Tinker.Laravel Tinker không hoạt động sau khi nâng cấp từ 5.3 lên 5.4

Laravel Tinker

Để tiếp tục sử dụng lệnh tinker Artisan, bạn cũng nên cài đặt gói laravel/tinker:

nhà soạn nhạc yêu cầu laravel/tinker

Khi gói có đã được cài đặt, bạn nên thêm Laravel \ Tinker \ TinkerServiceProvider :: class vào mảng nhà cung cấp trong tệp cấu hình config/app.php của bạn.

Nguồn: https://laravel.com/docs/5.4/upgrade

Và đây là cấu hình của tôi/app.php:

'providers' => [ 

     /* 
     * Laravel Framework Service Providers... 
     */ 
     Laravel\Tinker\TinkerServiceProvider::class, 

Nhưng sau đó, khi tôi chạy lệnh "php nghệ nhân tinker", nó nói này:

[Symfony\Component\Console\Exception\CommandNotFoundException] 
    Command "tinker" is not defined. 

Có ai đã từng trải nghiệm điều này trước đây không?

Lưu ý: lệnh nghệ nhân khác hoạt động hoàn hảo và tôi có thể thấy trang web của tôi tốt.

+0

Kiểm tra 'php artisan --version' cho phiên bản Laravel chính xác của bạn và tệp composer.lock của bạn (hoặc' composer show laravel/tinker') cho phiên bản laravel/tinker bạn đã cài đặt. – sisve

+0

Tôi có cùng một vấn đề, tôi đã xem giải pháp ở đây nhưng vẫn không hoạt động đối với tôi https: // stackoverflow.com/questions/42635016/command-tinker-is-not-defined –

Trả lời

25

Laravel Tinker

Để tiếp tục sử dụng lệnh tinker Artisan, bạn cũng nên cài đặt gói laravel/tinker:

composer require laravel/tinker

Một khi các gói đã được cài đặt, bạn nên thêm Laravel\Tinker\TinkerServiceProvider::class vào mảng nhà cung cấp trong tệp cấu hình config/app.php của mình.

Nguồn: https://laravel.com/docs/5.4/upgrade

+0

Cảm ơn, tôi đã chỉnh sửa bài đăng của mình để nó tham chiếu đến nguồn –

+0

điều này vẫn không hoạt động đối với tôi, thậm chí làm điều này –

+0

@sisve đã giải quyết cho tôi! Cảm ơn!! –

4

Chỉnh sửa của bạn app/Console/Kernel.php, sau đó sửa đổi $commands tài sản với điều này:

protected $commands = [ 
    // 
    \Laravel\Tinker\Console\TinkerCommand::class, 
]; 

sau đó trong giao diện điều khiển, làm cho một

composer dump-autoload 

Tôi hy vọng nó hoạt động và rằng một số nhà phát triển có kinh nghiệm-kudo không nhấp vào bằng phiếu bầu phủ định.

Các vấn đề liên quan