[KOHANA] Bài 4 kết hợp Controller, Template và View

Controller + Template + View

Ở bài trước controller đã có thể liên kết với template. Bài này tiến thêm 1 bước là kết hợp với View. Như  đã biết View có thể được hiểu là những phần mà người dùng thấy được, tương tác được giữa hệ thống và người dùng ví dụ như: hình ảnh, biểu mẫu, kích thước, kiểu chữ, giao diện,...Tóm lại là những gì mà chúng ta làm cho người sử dụng tương tác được. Việc tách biệt view và controller, model sẽ giúp người lập trình dễ dàng phát triển và nâng cấp mã nguồn trong tương lai dễ dàng hơn.

 trong Kohanà thì view được gọi $view = View::factory('đường dẫn view ');

 Render để thể hiện bằng
    $detail_product = $view->render();
 
    // Or just type cast it to a string
    $detail_product = (string) $view;
 
gửi thể hiện (render)
    $this->request->response = $detail_product;

Thôi thì bây giờ bắt tay vào 

TEMPLATE

Bây giờ ta tạo 1 controller temp như sau, ta sử dụng template nên ta extends thằng controller_template chứ ko extends thằng controller nữa nha.

PHP Code:

<?php 

defined('SYSPATH') or die('No direct script access.'); 

 class Controller_Temp extends Controller_Template { 

public $template = 'home/index';  

public function action_index() { 

 

    }  

 

// End Temp

Để có thể gọi đúng thì trong  thư mục application/views tạo 1 thư mục home , và vào thư mục home tạo 1 file index.php và nội dung file index.php như sau:

PHP Code:

Viết gì thì tùy bạn  

Test thử nào

http://localhost/kohana/temp

 

VIEWS

Giờ ta bắt tay vào view nào, 

Ta sửa lại function action_index lại như sau 

PHP Code:

public function action_index() { 

        $this->template->content = View::factory('member/list'); 

    }  

rồi  tạo 1 thư mục member trong application/views và tạo 1 file list.php trong thư mục member với nội dung như sau

PHP Code:

LIST MEMBERS  

và các bạn mở file index.php trong thư mục home lên nào, thay đổi nội dung:.

PHP Code:

<h1>HOME PAGE NÈ ^^!</h1> 

 

<div> 

    <?php echo $content ?> 

</div>

Chạy thử chạy thử nào.. http://localhost/kohana/temp -> xuất ra được vầy là okie

HOME PAGE NÈ ^^!

LIST MEMBERS

Tới đây là okie xog template + view nha nha.

tham khảo từ qhonline