问题标签 [view-helpers]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
1313 浏览

ruby-on-rails - 是否可以在运行时加载 Rails 助手?

我的视图可能会有很大差异,具体取决于特定用户选择的“模式”。

我想我会将不同的行为提取到两个不同的 Helpers 中,然后在 Controller 中编写如下代码:

一旦加载了正确的帮助程序,则在两个帮助程序中定义的类似 <%= edit_item %> 的语句将为特定的“模式”加载正确的表单。

这在开发中效果很好,但在生产中,case 语句只运行一次。然后你就会被第一次加载的任何帮助程序困住(呃!我应该知道的。)

我已经想到了其他方法来实现我需要做的事情,但我仍然认为使用 Helpers 是改变 View 行为的一种很好的干净方式。

有谁知道我如何在运行时加载(或重新加载)助手?

TIA:约翰

0 投票
1 回答
10404 浏览

zend-framework - 使用 Url 查看帮助链接时从 URL 中删除参数

在使用 Url view helper 构建链接时,如果当前页面的 url 中有参数,则 Url view helper 生成的 url 也会包含参数。

例如在页面/controller/action/param/value/中的以下代码:

将输出:

是否可以清理参数助手输出的url?

0 投票
1 回答
10775 浏览

php - Zend Framework headMeta() - 关键字不附加

我正在使用 Zend Framework 1.8。我遇到了 headMeta() 复制元关键字的问题。

在我的 layout.phtml 中,我有
<?php echo $this->headMeta(); ?>

我有一个自定义Controller_Plugin_ViewSetup(扩展Zend_Controller_Plugin_Abstract),其中包含以下代码,在dispatchLoopStartup()函数中:
$view->headMeta()->setHttpEquiv('Content-Type', 'text/html;charset=utf-8'); $view->headMeta()->setName('keywords', 'global,generic,keywords,');

最后,在我的视图脚本中,我有以下内容:
$this->headMeta()->appendName('keywords', 'view,specific,keywords');

我期待在我的 HTML 源代码中,我会看到:
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
<meta name="keywords" content="global,generic,keywords,view,specific,keywords" />

但是,我实际上看到了这一点:
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
<meta name="keywords" content="global,generic,keywords," />
<meta name="keywords" content="view,specific,keywords" />

换句话说,元关键字没有按应有的方式连接在一起。我究竟做错了什么?

干杯,
马特

0 投票
7 回答
961 浏览

php - 在 Zend Framework 中的视图或控制器中设置变量更好吗?

我的问题需要一些设置,所以请多多包涵:

我转而使用 View Helpers 从模型中获取数据,而不是将其洒在控制器上(向Eric Clemmons 致敬)。它在那里更加可重用和灵活。我就喜欢!

我通常做的是将模板放在 index.phtml 中,然后当我需要从模型中获取一些东西时,将那个片段放在 detail.phtml 中,这样逻辑就尽可能地避开了。

但是,我开始看到需要重用的变量。例如,类别名称。现在您不想使用视图助手一遍又一遍地从模型中获取猫的名称。虽然你可以缓存它,但这显然太麻烦了。

所以我开始在 detail.phtml 中使用几行 php 来设置变量。而且它不再闻起来不对劲了。视图不应该有太多的逻辑。

那么大家怎么说呢?如果 var 被重用,把它放在控制器中?或者不介意在视图中设置几个变量?

编辑:Alan Storm 询问了一个 viewhelpers 的例子:

详细信息.phtml:

(为反短标记者的攻击做好准备)

另一个编辑:我看到不可能有 2 个正确答案。那好吧...

0 投票
4 回答
1063 浏览

ruby-on-rails - Erubis 阻止助手使用 concat 抛出错误

我有几个块助手,这是我正在做的一个简单示例:

我只是在尝试 erubis,它给了我以下错误:

删除对concat删除错误的调用,但最终我的包装器没有被呈现

使用:

  • 导轨 2.3.5
  • 埃鲁比斯 2.6.5
  • 并尝试了这个可以帮助 Erubis(虽然是 2.6.4)和 Rails 2.3 一起玩得更好的gem
0 投票
5 回答
20929 浏览

php - 如何添加视图助手目录(zend 框架)

我从 ZF (1.9.7) 开始,我想使用我所有项目之间共享的库中的 View Helpers。但我找不到如何将它的目录添加到助手路径。当我将它们放在应用程序的助手路径中时,我的疱疹可以正常工作。

这是错误,我在其中找到 ZF 助手的路径和应用程序的路径。

最好的问候
塞德里克

0 投票
5 回答
28048 浏览

php - 在 Zend Framework 的控制器中使用视图助手

我有一个使用 AJAX 调用的控制器(发送 JSON 数据),所以我不使用视图。

我需要使用个人视图助手来格式化我的数据,但在我的控制器中。

那可能吗 ?

或者也许我做错了(也许我应该有一个观点,但是 JSON 怎么样)?

0 投票
2 回答
2682 浏览

php - 如何在 Zend 视图助手中访问 url 变量的值?

我想在我的视图助手中访问特定变量(在 url 中)的值。我怎样才能做到这一点?

我可以通过以下方式获取我的控制器名称: Zend_Controller_Front::getInstance()->getRequest()->getControllerName(); ,但我不知道变量...

提前致谢!

0 投票
1 回答
3777 浏览

zend-framework - headScript() 视图助手如何工作?

我正在使用 Zend_View_Helper_HeadScript 在标签内添加 JavaScript 代码<head>

这很好用,除了我的代码充满了<script>标签(每个标签一个appendScript call)。如何添加$javascript2到同一个<script>标签?我只想<script><head>.

headScript和有什么区别inlineScript

0 投票
1 回答
3299 浏览

c# - 显示日期时间字符串或空字符串的函数

我试图创建一个视图助手,它接受一个 DateTime 对象并返回一个字符串。如果 DateTime 对象等于新的 DateTime(0),则该函数返回一个空字符串。否则返回格式化的 DateTime 字符串。到目前为止,这有效。

问题是,我想将格式 ("{0:g}") 作为参数传递:

但它不能正常工作。如果我从我的角度调用助手

以“{0:g}”作为“格式”参数的函数,我得到类似“{O:n. Chr.}”的东西,这不是我所期望的