【问题标题】:Reusable elements in main CakePHP layoutCakePHP 主布局中的可重用元素
【发布时间】:2012-01-12 03:04:19
【问题描述】:

我想在我的默认布局中引入不同的视图。

'default.ctp' 是我的主要布局模板,目前仅从 'view/posts/index.ctp' 中提取内容,但是,我还想包括我的添加新闻表单('view/posts /add.ctp') 在此模板中。

这容易实现吗?

我查看了有关“元素”的手册,但似乎没有帮助。

感谢您的任何指点。

【问题讨论】:

    标签: php cakephp layout views elements


    【解决方案1】:

    如果你想在页面上呈现另一个动作的一个动作结果,Object::requestAction() 可以阻止你。

    在视图(view/posts/index.ctp)的地方,你想显示其他视图的地方(view/posts/add.ctp),把这个cpode:

    echo $this->requestAction('/posts/add', array('return'));
    

    More about requestAction

    如果您只想渲染其他模板 - View::render() 为您服务。 此方法仅在没有执行操作的情况下呈现模板,并且在相同情况下(例如,使用分页器的地方)不能正确工作。

    代码:

    echo $this->render('/Posts/add', false);
    

    '/Posts/add' - 对于 CakePHP 2,对于 1.3 - '/posts/add'

    【讨论】:

    • 感谢您的帮助 :-) 我添加了 ` requestAction('/posts/add', array('return')); ?>` 到我的 'index.ctp' 和一点点诡计,它成功了 :) 再次感谢您抽出时间在这里提供帮助。祝你有美好的一天!
    猜你喜欢
    • 1970-01-01
    • 2010-12-28
    • 1970-01-01
    • 2017-05-01
    • 2021-09-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多