我知道,如果我将其放在链接上,我就会点击该链接:
array('controller'=>'challenge','action'=>'evaluateChallenge','codTeam'=>$d["cod_challenge_team"]);
如果,在控制器上我做:
$values = $this->_request->getParams();
$teamVo->setCodTeam($values['codTeam']);
我将获得所需的价值。
我想做同样的事情,但是没有用户进行交互。 我打算将值传递给evaluateChallenge,每次我在视图侧循环通过值。
这是最愚蠢的问题之一,但它确实可以解释这里的损失。
我可以帮忙吗?
或者至少告诉我我说错了什么。 :)
:::::::::::::::::::::::::::::::::: UPDATE ::::::::: :::::::::::::::::::::::::::::
我想显示与给定团队相关的数据库记录元素列表。 所以我可以:
团队A. - cod_team - 挑战A. - 参与者ABC - 积分XXX
团队B. - cod_team - 挑战A. - 参与者ABC - 积分XXX
等等......
在我的观点上对此进行的代码翻译是这样的:
foreach ($challenge as $d) {
echo $d['challengeName'];
echo $d['participants'];
echo $d['points'];
}
一切都很好。
现在,我需要在此列表中添加其他信息,以便我可以使用:
团队A. - cod_team - 挑战A. - 参与者ABC - 积分XXX - FILESATTACHED_NEW_INFORMATION
团队B. - cod_team - 挑战A. - 参与者ABC - 积分XXX - FILESATTACHED_NEW_INFORMATION
依旧......
这个新信息应该在视图帮助器上解决。好。 我会弄清楚如何做到这一点。
然而,我需要在视图上调用该帮助程序 - 对吗?在foreach所在的同一视图上。但是,我需要将FilesAttached与foreach相关联($ challenge为$ d)以某种方式对吗? - 或者还有其他方法吗?
如果没有别的办法: 我们如何将来自帮助者的数据与通过foreach在视图中存在的数据联系起来?
再次感谢, MEM
答案 0 :(得分:1)
我想做同样的事情,但是没有用户进行交互。我打算将值传递给evaluateChallenge,每次我在视图侧循环通过值。
您可以使用Action ViewHelper执行此操作,但这会为每次调用创建一个新的调度循环。这会严重降低您的应用程序速度,why you should avoid it。 The helper might also be removed in ZF2.
更好的方法是使用可以传递所需参数的ViewHelper。然后,该视图助手将使用传递的参数查询适当的模型,并返回所需的值。只要这不会改变模型状态,it is okay to fetch data from the View directly。
RE更新
没有任何魔力:
foreach ($challenge as $d) {
echo $d['challengeName'],
$d['participants'],
$d['points'];
$results = $this->evaluateChallenge($d['cod_challenge_team']);
// now do something with the results
}