У меня есть файл print_coupon.ctp, который я хотел бы использовать для купонов из любой из моих категорий купонов .... ресторанов, ночных клубов, полей для гольфа и т. Д. (Все они имеют свои собственные модели).В моем контроллере у меня есть такая логика:
public function print_all_coupons() {
$this->layout ='couponlayout';
$this->set('title', 'Print all coupons for Gulf Shores');
$this->Coupon->recursive=2;
$this->paginate['Coupon']=array(
'limit'=>9,
'order'=>array(
'id'=>'asc'
),
'conditions'=>array(
'OR'=>array(
'expires' =>0,
'Coupon.end_date >'=>date('Y-m-d')
))
);
$c=$this->paginate('Coupon');
$this->set('printcoupons', $c);
}
Это позволяет мне видеть вверх по лестнице, поскольку любой купон принадлежит ресторану, полю для гольфа, ночному клубу, пользователю и т. Д. Обычно в моем представлении о печати говорят ресторанкупон, я бы извлек свои данные, сказав что-то вроде
echo $h['Restaurant']['Location']['address'];
, что прекрасно работает, только для ресторанов.Я хотел бы иметь возможность получить переменную из контроллера, которая позволила бы мне изменить любую модель, к которой относится купон, например:
echo $h['$someModel']['Location']['address'];
Конечно, это возможно в Cakephp?