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

如何在CakePHP中将值传递给布局,php,cakephp,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 n

在我的默认布局中,我有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 action设置的参数?我们可以这样做吗?

    您可以像传递视图中的值一样传递值

    正在运行

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


    在布局中,您可以在$yourkey变量中获取“your-value”(代码)

    正确的方法,以从操作到视图(布局)获取值。
    就是把它们设置成这样的动作:

    在搜索行动中:

    $this->set("testing","testing_string");
    
    在布局处(default.ctp)

    
    
    如果您输入应用程序,则可能需要对其进行初始化
    您将得到一个未定义的变量错误。

    请尝试放置

    $this->set("variable_name","contents");
    

    在AppController的
    beforeFilter()
    方法中(如果您还没有得到它,只需创建
    public function beforeFilter(){…}

    来自搜索操作控制器。
    -从什么意义上说?@AD7six我也添加了我的表单,我在布局中没有得到值,所以我把它发布在堆栈上,还有其他解决方案吗?您使用的是哪个cakephp版本?我正在使用cakephp 2.3尝试在操作中而不是在视图中执行此操作,如果你还没有?你能显示你的代码你把
    controller action
    layout
    设置并获取视图变量。是的,如果我们在appcontroller中设置它,我们将在默认布局中获取值,但我不需要像那样,我只需要从我的学院控制器那里获取..好的。你能发布你用来设置变量的代码吗?如果可以,只需在控制器中给出整个操作。因此,您希望在搜索操作中设置这些值,并在default.ctp中使用它们。对吗?好的。您只需在搜索操作中设置这些变量,并在default.ctp中使用它们,就像我在回答中所写的那样。这不管用吗?
    $this->set("variable_name","contents");