【问题标题】:Pass parameters to Presenters (fuelphp)将参数传递给演示者(fuelphp)
【发布时间】:2017-03-22 22:43:32
【问题描述】:

如何将参数传递给 Presenter?在那里阅读文档似乎没有办法。

https://fuelphp.com/docs/general/presenters.html

控制器

    $points = Presenter::forge('points', 'viewmy');
    $points->set('id', 5);

Presenter 类或视图(我都试过了):

var_dump($id);
var_dump($this->id);

两个 var_dump 都会产生未声明的变量错误

Presenter 类中的这也不起作用: $id = $this->get('id');

【问题讨论】:

    标签: fuelphp


    【解决方案1】:

    从您链接的页面:

    在您的代码中,视图和演示者是可以互换的。您可以从控制器操作中返回 Presenter,可以将 Presenter 设置为 Theme 部分,或者将其分配给页面模板的一部分。 Presenter 的基本 API 与 View 兼容。这使得您可以轻松地在代码中将 View 替换为 Presenter,而无需对代码进行大修。

    它们具有与常规视图对象完全相同的界面。

    因此,按照https://fuelphp.com/docs/general/views.html,您可以使用set() 方法或在forge() 方法中传递参数。

    【讨论】:

      【解决方案2】:

      我终于找到了这个问题的根源。我在我的 Presenter 中使用 setview 函数来根据条件进行更改。这意味着我设置的任何值都丢失了。

      将视图传递给 forge 的第四个参数而不是在演示器中设置它修复了这个问题。

      【讨论】:

        猜你喜欢
        • 2011-11-27
        • 2016-03-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-07-06
        • 2019-09-27
        相关资源
        最近更新 更多