Sử dụng Element trong Cakephp

Sử dụng Element trong Cakephp

Element thật sự là cần thiết khi chúng ta muốn sử dụng một đoạn code nhiều lần trong view hoặc layout. Thay vì chúng ta viết đi viết lại nhiều lần trong các view với một đoạn source giống nhau thì chúng ta chỉ việc viết một lần trong element và sử dụng chúng nhiều lần. Việc tạo một element sử dụng nhiều lần trong cakephp sẽ rất dễ dàng khi chúng ta sử dụng hàm requestAction. Sau đây tôi sẽ hướng dẫn các bạn sử dụng element mà dùng được trong cả cakephp 1.1 lẫn cakephp 1.2.

Đầu tiên chúng ta sẽ tạo ra controller Post như sau:

<?php
class PostsController extends AppController {
var $name = 'Posts';
function index() {
$posts = $this->Post->findAll(); 

//Kiểm tra xem hàm requestAction có được gọi hay không
if(isset($this->params['requested'])) {
return $posts;
}
$this->set('posts', $posts);
}
}
?>

Trong hàm index trên ta sẽ kiểm tra xem nó có được gọi bằng hàm requestAciton hay không. Nếu có thì hàm sẽ trả về một mảng $posts. Bây giờ chúng ta sẽ tạo ra một element post.ctp (hay post.thml trong cakephp 1.1) có đường dẫn như sau: /app/elements/posts.ctp.

<?php

$posts = $this->requestAction('posts/index'); 
foreach($posts as $post):
echo $post['Post']['title'];
endforeach; 

?>

Để sử dụng element trên, chúng ta chỉ việc thêm đoạn code sau vào các view hoặc layout là xong.

<?php echo $this->renderElement('posts');?> 

Vậy là xong.

Tags: 
Bạn thấy bài viết này như thế nào?: 
Average: 10 (1 vote)
Ảnh của Khanh Hoang

Khanh Hoang - Kenn

Kenn is a user experience designer and front end developer who enjoys creating beautiful and usable web and mobile experiences.

Bình luận (0)

 

Add Comment

Filtered HTML

  • Các địa chỉ web và email sẽ tự động được chuyển sang dạng liên kết.
  • Các thẻ HTML được chấp nhận: <a> <em> <strong> <cite> <blockquote> <code> <ul> <ol> <li> <dl> <dt> <dd>
  • Tự động ngắt dòng và đoạn văn.

Plain text

  • No HTML tags allowed.
  • Các địa chỉ web và email sẽ tự động được chuyển sang dạng liên kết.
  • Tự động ngắt dòng và đoạn văn.
CAPTCHA
This question is for testing whether or not you are a human visitor and to prevent automated spam submissions.

Advertisement

 

jobsora

Dich vu khu trung tphcm

Dich vu diet chuot tphcm

Dich vu diet con trung

Quảng Cáo Bài Viết

 
Các cách để save a node in Drupal

Các cách để save a node in Drupal

Every day, millions of nodes are saved. It happens every time content is created, migrated, or updated. It's probably the most common content management task in Drupal.

Giới thiệu sơ lược Apache Hadoop

Giới thiệu sơ lược Apache Hadoop

Các cỗ máy tìm kiếm như Google chọn lọc thông tin và trả về kết quả trong tích tắc. Kỹ thuật thường được sử dụng là chia nhỏ nhiệm vụ(job) để hàng loạt máy tính cùng nhau thực hiện. Kỹ thuật này cũng được biết đến với tên gọi Cloud computing. Tìm hiểu hadoop sẽ giúp chúng ta làm quen với Cloud computing.

Dùng Browser caching trong thiết kế web mobile

Dùng Browser caching trong thiết kế web mobile

Khi thiết kế web mobile bạn vẫn có thể dùng kỹ thuật Browser caching nhưng chú ý bảng phân tích sau (Đa số không quá 4MB hay 2MB)

Công ty diệt chuột T&C

 

Diet con trung