Có một số cách để thực hiện việc này, nhưng tôi nghĩ cách tốt nhất là sử dụng các tham số được đặt tên .
Về cơ bản, trong lượt xem / khách hàng / view.ctp của bạn, bạn thêm một customer_id vào danh bạ / liên kết thêm:
$html->link(__('Add contact', true), array('controller' => 'contacts', 'action' => 'add', 'customer_id' => $customer['Customer']['id']));
và trong chế độ xem / danh bạ / add.ctp, bạn kiểm tra thông số đã đặt tên và sử dụng trường ẩn:
if (isset($this->params['named']['customer_id'])) {
echo $form->input('customer_id', array('type' => 'hidden', 'value' => $this->params['named']['customer_id']));
} else {
echo $form->input('customer_id');
}
hoặc lựa chọn với đúng khách hàng đã được chọn:
echo $form->input('customer_id', array('selected' => @$this->params['named']['customer_id']));