问题标签 [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 投票
1 回答
11645 浏览

zend-framework - Zend Framework Url View Helper 默认添加“id”

我正在创建一个简单的 CRUD 来添加到类别的链接。每个类别都有一个 id。我有一个列出某个类别的所有链接的视图。在该视图中,我有一个指向添加表单的链接,即:

我目前使用以下语法在视图中构建该链接。

认为这可以通过使用 Url View Helper 来完成。

但这给了我以下网址

..它有一个额外的“id/3”。我阅读了但没有完全理解 Url View Helper 的代码。里面怎么多了一个id/3?

谢谢!

@Fge 给出了正确答案,下面是我更新的完整语法。

0 投票
2 回答
517 浏览

ruby-on-rails - 阻止 javascript_include_tag 被转义

我正在升级 Rail 3 应用程序,出于某种原因,这条线

生产

在标签前面添加一个“原始”是可行的,但我试图找出它这样做的真正原因。它上面的样式表标签工作正常。我很困惑。有什么帮助吗?

0 投票
1 回答
689 浏览

php - 使用 Zend Framework View Helper 返回数据

我正在创建一个视图助手来处理返回从其他地方抓取的一些数据屏幕,我的问题是,收集收集的数据并将其返回以供视图使用的最佳方法是什么?

假设视图助手退出并成功抓取了几个充满数据的 div。

我应该返回一个数据数组并在视图中对其进行迭代吗?

或者也许在视图助手中构建输出并将全部作为字符串返回?

或返回一个对象而不是一个数组或我遗漏的其他方式(或在上面的例子中搞砸了)?提前致谢。

0 投票
3 回答
982 浏览

model-view-controller - 从控制器或表单中解析视图助手位置

我有一些视图助手可以在需要时添加 JavaScript 文件(例如,只有表单使用 CKEditor 等)。我的目录结构(简化为仅包含相关文件)是这样的:

我想做的事:

  1. 在视图中包含 CKEditorproject/project/issueadd
  2. 将 jQuery UI 包含在project/project/version

当我在视图脚本中时,调用<?php $this->jQueryUI(); ?>就像一个魅力,即使助手位于默认模块的助手目录中。但是,对于控制器和表单而言,情况并非如此。

在控制器ProjectController.phpversionAction(),我尝试调用:

效果是个例外:

消息:在注册表中找不到名为“JQueryUI”的插件;使用的路径: Project_View_Helper_: C:/xampp/htdocs/bugraid/application/modules/project/views\helpers/ Zend_View_Helper_: Zend/View/Helper/

同样,在AddIssue.php表格中,我尝试了这个:

又出现了一个例外:

消息:在注册表中找不到名为“所见即所得”的插件;使用的路径: Project_View_Helper_: C:/xampp/htdocs/bugraid/application/modules/project/views\helpers/ Zend_View_Helper_: Zend/View/Helper/

显然,如果我的视图助手位于调用它们的模块/控制器的助手目录中,两者都可以工作,但是由于它们在许多模块中使用,我希望将它们放在默认模块的视图助手目录中.

所以,我的问题是:

  1. 如何从控制器和表单中访问这些视图助手?
  2. 有没有更简单的方法来解决这个问题(除了简单地在布局中包含所有 javascript 文件)?喜欢创建插件或动作助手?(我以前没有做过这些事情,所以我真的不知道,我只是从 ZF 开始我的冒险)。
0 投票
1 回答
667 浏览

zend-framework - 未使用自定义视图助手找到插件

我需要一些自定义视图助手的帮助。

我的文件夹结构是这样的:

如果我去localhost/smjestaj我得到这个错误:

消息:在注册表中找不到名为“LoadSkin”的插件;使用的路径: Smjestaj_View_Helper_: /Users/davs/Zend/workspaces/DefaultWorkspace7/1/application/modules/smjestaj/views/helpers/
ZendX_JQuery_View_Helper_: ZendX/JQuery/View/Helper/
Zend_View_Helper_: Zend/View/Helper/

我试图在 application.ini 中注册我的助手,但没有运气。

如果我将文件夹复制view->helpers->LoadSkin.php到可以工作的模块 smjestaj 中,但我认为这不是正确的方法。

0 投票
2 回答
1814 浏览

php - 重置 Zend 框架中的所有视图助手

有没有办法重置所有视图助手的状态,例如删除所有添加的脚本headScript()?即使我正在为每个测试创建一个新的控制器和视图,以下单元测试也会看到在一个单元测试中添加的脚本和元标记。这会导致误报和误报。

0 投票
4 回答
5886 浏览

ruby-on-rails - Rails:是否可以使用 HAML 语法编写视图助手?

在重构过程中,只需复制 HAML 模板的一部分并将其粘贴到帮助程序的代码中就很方便了。目前在这种情况下 1) 我必须从头开始重写视图的那一部分 2) 我必须使用像 content_tag 或 haml_tag 这样的冗长语法。

我知道可以使用 HAML 系统税定义部分作为帮助程序。虽然 1)对我来说,为每个小函数创建一个单独的文件是不方便的 2)partial 的调用语法非常冗长。

理想情况下,我希望我的 *_helper 类看起来像这样:

或者至少是这样的:

有没有解决我问题的插件?

或者,也许您可​​以描述如何将 HAML 片段重构为可重用元素(助手/函数/部分/构建器/等)?

0 投票
2 回答
2633 浏览

ruby-on-rails - Ruby on Rails content_tag 选项哈希 - 设置布尔 html 属性?

布尔属性,在 html 5 草案规范中定义:

http://dev.w3.org/html5/spec/Overview.html#boolean-attributes

元素上存在布尔属性表示真值,不存在该属性表示假值。

如果存在该属性,则其值必须是空字符串或与属性的规范名称匹配的不区分大小写的 ASCII 值,并且没有前导或尾随空格。

我的页面使用的是 html5 DTD。我正在尝试在我自己的助手中使用 content_tag 视图助手,但是在将布尔属性传递给它时遇到了问题。

具体来说,这是我的帮手:

在我看来,假设我这样称呼它(我正在使用haml):

这就是我希望它呈现的内容:

但这是我实际得到的:

根据 w3 规范,这是无效的标记。布尔属性的合法值是属性本身的名称,或者根本没有值。

这很烦人,因为我可以更改:itemscope => trueto:checked => true并且它将正确地呈现属性,就像checked='checked'div 元素的属性列表中一样。

我更希望它呈现just itemscope...的最小化版本,但我不确定如何使用 content_tag 选项来做到这一点。我可以很容易地发送 :itemscope => 'itemscope' 但是很难说这是否会被谷歌正确解释,因为他们的所有示例和规范都显示了最小化版本。请参阅此处: http ://www.google.com/support/webmasters/bin/answer.py?answer= 146861 了解这些属性是什么以及我使用它们的原因(微数据格式)

任何人都知道我如何有效地让任何属性在 content_tag 中发送一个真或假(ruby boolean)值以在没有任何值的情况下呈现,而不是尝试对布尔值进行字符串化?谢谢 :)

0 投票
1 回答
1056 浏览

zend-framework - Zend 国际化视图助手

在我当前的项目中,我需要使用一个助手,我想在我的 .po 文件中翻译这个视图助手中的字符串。所以,我认为我需要使用 translate() 助手,但我不知道如何在助手中使用它。

这是我在网上找到的助手:

任何的想法 ?

0 投票
3 回答
1933 浏览

php - 如何注册命名空间的自定义视图助手?

我有一个 Zend Framework 应用程序,它带有一个命名空间(PHP 5.3)的自定义库。

我想注册一个视图助手,但由于我在视图助手中使用的命名空间,我无法做到这一点。

目前我在我的引导程序中有以下内容来注册帮助程序路径:

我得到的错误:

Zend_Loader_PluginLoader_Exception:在注册表中找不到名为“IsActive”的插件;使用的路径:App\View\Helper_:

有人知道如何注册命名空间的视图助手吗?