如何将值传递给CakePHP中的布局

时间:2013-07-16 10:10:10

标签: php cakephp

在我的默认布局中,我有3个链接,我需要将值传递给搜索行动学院控制器的这些链接。

我的默认布局链接

 <li class="single-link">
<a   href=<?php echo ROOTPATH.'Inventions';?>>Invention</a>    </li>
<li class="single-link"><!-- Using class="single-link" for links with no dropdown -->
<a   href=<?php echo ROOTPATH.'technology';?>>Technology</a>   </li>
<li class="single-link"><!-- Using class="single-link" for links with no dropdown -->
<a   href=<?php echo ROOTPATH.'enterper';?>>Enters</a>   </li>
<li class="single-link">

我的搜索结果表单

<div class="searchbox" align="center">
<form id="form1" name="form1" method="post" action="/inno/colleges/search" >
   <label><span class="style14">Enter College Name</span>
     <span class="style14">
     <input type="text" id="tags" name="data[College][name]"  size="70"/>
     </span><span class="style12">     </span><span class="style10">     </span>     </label>
   <label>
   <input type="submit" name="Submit" value="Explore"/>
   </label>
 </form>
</div>

在以上所有3个href中,我需要添加一个我从seacrh动作设置的参数?我们可以这样做吗?

3 个答案:

答案 0 :(得分:1)

您可以使用与传递视图中的值相同的方式传递值。

In Action

$this->set('yourkey', 'your-value');

在布局中,您可以获得'your-value' in $yourkey variable

答案 1 :(得分:0)

从行动到视图获取值的正确方法(布局也是如此) 是在Action中设置它们:

在Seach-Action中:

$this->set("testing","testing_string");

在布局(default.ctp)

<?=$testing?>

如果您输入申请书,您可能需要进行初始化 你会得到一个未定义的变量错误。

答案 2 :(得分:0)

尝试放

$this->set("variable_name","contents");
在AppController的beforeFilter()方法中

(如果还没有,只需创建public function beforeFilter() { ... }