Laravel 5.5 sẽ có gì mới
Bài đăng này đã không được cập nhật trong 3 năm
Phiên bản tiếp theo của Laravel là Laravel 5.5 (hiện tại là 5.4) được lên kế hoạch phát hành vào tháng 7 năm 2017, vậy sẽ có gì đáng mong đợi ở phiên bản này?
1. Laravel 5.5 sẽ yêu cầu PHP 7.0+
Nếu bạn vẫn đang sử dụng PHP 5.x trên máy của mình thì bạn nên bắt đầu suy nghĩ về việc nâng cấp lên PHP 7+ đi thôi, PHP 7 tuyệt hơn PHP 5.x nhiều và cũng vì Laravel 5.5 sẽ yêu cầu PHP 7+ đấy
2. Laravel 5.5 sẽ là bản LTS Release tiếp theo
Phiên bản Laravel 5.1 là phiên bản LTS (Long Term Support - Hỗ trợ dài hạn) chính thức đầu tiên của Laravel và Laravel 5.5 sẽ là phiên bản LTS tiếp theo.
3. "vendor:publish" command sẽ xuất hiện nhắc nhở khi chạy
Với phiên bản hiện tại, command vendor:publish sẽ publish mọi thứ nó tìm thấy, bao gồm configs, views, migrations và nhiều hơn nữa, nhưng trong phiên bản Laravel 5.5, command này sẽ nhắc nhở bạn để chọn lựa những gì bạn thực sự muốn publish. Ngoài ra bạn cũng có thể thêm flag --all hoặc --provider để chỉ cho nó biết bạn muốn publish những gì.
4. Bạn có thể render trực tiếp Mailables lên trình duyệt
Bạn đã từng lặp đi lặp lại cùng 1 việc là gửi mãi một bức thư để xem giao diện của nó như thế nào? Quên đi, với Laravel 5.5 mọi việc easỳ hơn nhiều. Để tạo UserWelcome Mailable:
php artisan make:mail UserWelcome --markdown=emails.user.welcome
Và bạn có thể xem ngay giao diện của "bức thư" này bằng cách:
Route::get('/demo', function () {
return new App\Mail\UserWelcome();
});
Truy cập vào domain/demo và mọi thứ hiện ra Thật quá easỳ đúng không nào!
5. Tự viết theme cho Mailables
Tạo một file css chứa định dạng bạn mong muốn cho Mailables theo đường dẫn:
resources/views/vendor/mail/html/themes/my-theme.css Sau đó update lại file cấu hình mail.php như sau
'markdown' => [
'theme' => 'my-theme',
'paths' => [
resource_path('views/vendor/mail'),
],
],
Cuối cùng, đơn giản là sử dụng theme cho mail của bạn thôi
class SendInvoice extends Mailable
{
protected $theme = 'my-theme';
...
}
6. Laravel Migrate Fresh Command
Khi bạn chạy lệnh php artisan migrate:refresh
Rolling back: 2014_10_12_100000_create_password_resets_table
Rolled back: 2014_10_12_100000_create_password_resets_table
Rolling back: 2014_10_12_000000_create_users_table
Rolled back: 2014_10_12_000000_create_users_table
Migrating: 2014_10_12_000000_create_users_table
Migrated: 2014_10_12_000000_create_users_table
Migrating: 2014_10_12_100000_create_password_resets_table
Migrated: 2014_10_12_100000_create_password_resets_table
Và khi chạy lệnh php artisan migrate:fresh mới trên Laravel 5.5
Dropped all tables successfully.
Migration table created successfully.
Migrating: 2014_10_12_000000_create_users_table
Migrated: 2014_10_12_000000_create_users_table
Migrating: 2014_10_12_100000_create_password_resets_table
Migrated: 2014_10_12_100000_create_password_resets_table
Sự khác biệt là command migrate:fresh sẽ drop toàn bộ table thay vì rollback lại các migrate, đỡ tốn thời gian hơn nhiều.
7. Adds Frontend Presets
Bắt đầu từ phiên bản 5.3, Laravel đã được bao gồm Bootstrap và Vue.js để bạn có thể nhanh chóng tạo một ứng dụng bạn mong muốn. Sang phiên bản 5.5 bạn sẽ có thể lựa chọn để sử dụng gì và loại bỏ gì khỏi ứng dụng của mình với command preset
React Preset
php artisan preset react
Sau khi chạy, nó sẽ thay thế Vue.js bắng React trong ứng dụng của bạn.
Bootstrap Preset
php artisan preset bootstrap
Lệnh này sẽ chỉ giữ lại Bootstrap CSS, không còn Vue.j hay React...
Loại bỏ cả Bootstrap và Vue.js
php artisan preset none
Sẽ không còn gì nữa, không Bootstrap, không Vue.js
Laravel 5.5 sẽ rất đáng mong đợi phải không mọi người!
Xem tiếp Phần 2: https://viblo.asia/blaysku/posts/6J3ZgD9xlmB
All rights reserved