Laravel - Lượt xem

Trong khuôn khổ MVC, thư “V” viết tắt của Views. Nó tách biệt logic ứng dụng và logic trình bày. Lượt xem được lưu trữ trongresources/viewsdanh mục. Nói chung, dạng xem chứa HTML sẽ được ứng dụng cung cấp.

Thí dụ

Quan sát ví dụ sau để hiểu thêm về Chế độ xem -

Step 1 - Sao chép đoạn mã sau và lưu tại resources/views/test.php

<html>
   <body>
      <h1>Hello, World</h1>
   </body>
</html>

Step 2 - Thêm dòng sau vào app/Http/routes.php tập tin để thiết lập tuyến đường cho chế độ xem trên.

app/Http/routes.php

Route::get('/test', function() {
   return view('test');
});

Step 3 - Truy cập URL sau để xem đầu ra của chế độ xem.

http://localhost:8000/test

Step 4 - Đầu ra sẽ xuất hiện như trong hình sau.

Truyền dữ liệu sang chế độ xem

Trong khi xây dựng ứng dụng, nó có thể được yêu cầu truyền dữ liệu đến các khung nhìn. Chuyển một mảng để xem chức năng trợ giúp. Sau khi truyền một mảng, chúng ta có thể sử dụng khóa để lấy giá trị của khóa đó trong tệp HTML.

Thí dụ

Quan sát ví dụ sau để hiểu thêm về cách chuyển dữ liệu đến các khung nhìn -

Step 1 - Sao chép đoạn mã sau và lưu tại resources/views/test.php

<html>
   <body>
      <h1><?php echo $name; ?></h1>
   </body>
</html>

Step 2 - Thêm dòng sau vào app/Http/routes.php tập tin để thiết lập tuyến đường cho chế độ xem trên.

app/Http/routes.php

Route::get('/test', function() {
   return view('test',[‘name’=>’Virat Gandhi’]);
});

Step 3 - Giá trị của key name sẽ được chuyển vào file test.php và $ name sẽ được thay thế bằng giá trị đó.

Step 4 - Truy cập URL sau để xem đầu ra của chế độ xem.

http://localhost:8000/test

Step 5 - Đầu ra sẽ xuất hiện như trong hình sau.

Chia sẻ dữ liệu với tất cả các Chế độ xem

Chúng tôi đã thấy cách chúng tôi có thể truyền dữ liệu cho các chế độ xem nhưng đôi khi, cần phải truyền dữ liệu cho tất cả các chế độ xem. Laravel làm cho việc này đơn giản hơn. Có một phương pháp được gọi làshare()có thể được sử dụng cho mục đích này. Cácshare()phương thức sẽ nhận hai đối số, khóa và giá trị. Thông thườngshare()phương thức có thể được gọi từ phương thức khởi động của nhà cung cấp dịch vụ. Chúng tôi có thể sử dụng bất kỳ nhà cung cấp dịch vụ nào,AppServiceProvider hoặc nhà cung cấp dịch vụ riêng của chúng tôi.

Thí dụ

Quan sát ví dụ sau để hiểu thêm về chia sẻ dữ liệu với tất cả các chế độ xem -

Step 1 - Thêm dòng sau vào app/Http/routes.php tập tin.

app/Http/routes.php

Route::get('/test', function() {
   return view('test');
});

Route::get('/test2', function() {
   return view('test2');
});

Step 2 - Tạo hai tệp xem - test.phptest2.phpvới cùng một mã. Đây là hai tệp sẽ chia sẻ dữ liệu. Sao chép mã sau vào cả hai tệp.resources/views/test.php & resources/views/test2.php

<html>
   <body>
      <h1><?php echo $name; ?></h1>
   </body>
</html>

Step 3 - Thay đổi mã của phương thức khởi động trong tệp app/Providers/AppServiceProvider.phpnhư hình bên dưới. (Ở đây, chúng tôi đã sử dụng phương pháp chia sẻ và dữ liệu mà chúng tôi đã vượt qua sẽ được chia sẻ với tất cả các chế độ xem.)app/Providers/AppServiceProvider.php

<?php

namespace App\Providers;
use Illuminate\Support\ServiceProvider;

class AppServiceProvider extends ServiceProvider {
   
   /**
      * Bootstrap any application services.
      *
      * @return void
   */

   public function boot() {
      view()->share('name', 'Virat Gandhi');
   }

   /**
      * Register any application services.
      *
      * @return void
   */

   public function register() {
      //
   }
}

Step 4 - Visit các URL sau.

http://localhost:8000/test
http://localhost:8000/test2

Step 5 - Đầu ra sẽ xuất hiện như trong hình sau.