【问题标题】:Apply a module layout to zfcuser将模块布局应用于 zfcuser
【发布时间】:2013-04-09 20:53:02
【问题描述】:

我正在研究 zf2 并尝试使用 2 种不同的布局。公共模块的 1 个布局和所有其他模块的另一个(私有布局“)。它工作得很好,但我在公共模块中的 zfcuser 模块使用其他布局:/ 我试过这个:

'template_map' => array(  
    'zfc-user/user/login' => __DIR__ . '/../view/layout/blank.phtml', // blank is my public layout 
),

我没有在我的布局中获取表单,而是在公共布局和“私人”布局中获取我的表单...... 有人可以帮助我吗?

【问题讨论】:

  • 感谢您的链接,但我已经看到了 Evan 的插件,我不想只将它用于 2 个布局。
  • 好吧,检查Module#onBootstrap(),就是这样完成的......你不能让它比这个更小
  • 我也检查了blog.evan.pro/…,这样我就不需要 edpmodulelayouts(这并没有解决我的问题)。我仍在寻找在我的 zfcuser 上应用布局的方法..
  • 再一次,如果你想为一个你没有自己编程的模块设置一个布局,你需要 EdpModuleLayouts(或根据你的特定需要重写它)。我不明白你的问题是什么^^

标签: layout zend-framework2 zfcuser


【解决方案1】:

evan 在此处提供的代码 http://blog.evan.pro/module-specific-layouts-in-zend-framework-2 只需稍作更改即可满足您的需求,将 __NAMESPACE__ 替换为 'ZfcUser' 以便您监听 ZfcUser 控制器操作

public function init(ModuleManager $moduleManager)
{
        $sharedEvents = $moduleManager->getEventManager()->getSharedManager();
        $sharedEvents->attach('ZfcUser', 'dispatch', function($e) {
        // This event will only be fired when an ActionController under the ZfcUser namespace is dispatched.
        $controller = $e->getTarget();
        $controller->layout('layout/alternativelayout');
    }, 100);
}

【讨论】:

  • 如果其他人正在寻找您的解决方案,我也会将您的解决方案添加到 evan 的博客中。谢谢你。
  • 死链接。有人可以在这里发布答案吗?
  • @Bluebaron,链接中的代码与上面的代码几乎相同,只是事件标识符发生了变化(上面的zfcuser,原始的MyModule),但无论如何,回程机器链接在这里显示原始帖子-> web.archive.org/web/20120514011812/http://blog.evan.pro/…
【解决方案2】:

添加到 composer.json

"evandotpro/edp-module-layouts": "1.0"

创建/module/Application/view/layout/blank.phtml

<?php echo $this->content;

将此添加到 /config/autoload/global.php

return array(
'module_layouts' => array(
    'ZfcUser' => 'layout/blank'
));

最后到/module/Application/config/module.config.php

'view_manager' => array(

    'template_map' => array(

        //add this line
        'layout/blank' => __DIR__ . '/../view/layout/blank.phtml',

【讨论】:

    猜你喜欢
    • 2013-01-18
    • 1970-01-01
    • 1970-01-01
    • 2013-07-26
    • 2011-05-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多