问题标签 [cakephp-helper]

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 回答
1402 浏览

php - 将 FormHelper 加载到控制器 CakePHP 1.3

所以我的问题是我知道如何将 Helper 加载到 Controller 中,但它只适用于 HtmlHelper 而不是 FormHelper。

我将它加载到我的方法中,如下所示:

我遇到了一些错误,例如无法加载未知的 stdClas::$model 等。

当我用链接方法输出它时,HtmlHelper 工作得很好,我在我的视图中得到了一个完整的渲染链接。

我不仅要在 Ajax 上加载一个新的输入,但它不会工作,我不知道为什么......希望你理解我的问题。

0 投票
6 回答
6633 浏览

php - cakephp-2.0 最简单的ajax链接和jshelper

我想创建 Cakephp 2.0 中最基本的 ajax 链接。

index.ctp我有

TechnologiesController.php我有

view.ctp我有

它不是在成功 div 中设置视图,而是导航到http://local.cake.com/technologies/view页面以显示消息。

非常感谢任何帮助!

0 投票
1 回答
804 浏览

php - Logic between CakePHP component and helper

I am writing a component+helper pair which handle inclusion of JS files for the current View.

The idea is to autoload JS files which have the same name as the view (or action). So if you have a view called 'admin_add.ctp' and a file 'admin_add.js' in the same folder, the JS file would be included in the JS buffer. I would prefer this to happen automatically in both beforeRender calls.

The tricky part is that I need to be able to enable/disable the autoload at the Controller::action level (with a component), but the inclusion logic needs to happen at the View level (with a Helper).

How do I pass the enable/disable trigger from the Component to the Helper, without having to write code in each view template?

0 投票
3 回答
99 浏览

oop - 制作 CakePHP Helper 所需的建议

我需要制作一个 CakePHP 助手,其中涉及动态制作一些 HTML。但是部分代码是进行1-2个数据库查询。这些查询对于这个助手来说非常重要,因为它填充的所有文本都在数据库中。

根据 MVC 模式,我不应该在视图(助手)中进行数据库查询。我想知道这种情况下最好的设计是什么,因为我希望它也与 PHPUnit 测试保持一致。

任何想法都会受到欢迎...

0 投票
2 回答
193 浏览

php - 在子目录中组织助手

我是 CakePHP 的新手,我在组织我的帮助文件时遇到了麻烦。我在网上搜索,似乎没有找到答案。

如果我将帮助程序放在 app/Views/Helpers/test 下,我可以毫无问题地使用它们。

但是当我把它放在 app/Views/Helpers/Global/test 下时,

我收到“无法重新声明类 testHelper”

有人有什么主意吗?

0 投票
1 回答
423 浏览

php - CakePHP,使用通用控制器的可选控制器的路由,否则

我想在 CakePHP 中创建一个管理练习和用户结果的应用程序。用户和结果在这个问题中并不重要。

我希望有可能通过仅将特定表和行添加到 .ini 配置文件来添加练习。如果特定的不存在,应用程序应路由到 GenericExercisesController。如果特定不存在,控制器应加载 GenericExerciseModel。我已经通过模型加载和部分路由与控制器进行了管理,如下所示:

route.php

所以如果我想加载一个练习Foo我应该使用地址:

http://example.com/exercises/Foos/view

这工作正常,如果特定控制器存在无关紧要。

当我使用反向路由在视图中生成链接时,问题就开始了。如果练习Foo具有特定的控制器,则可以正常工作:

print $this->Html->url(array('controller' => Inflector::pluralize($exerciseName), 'action' => 'view')); 产生: /exercises/Foos/view

但是当锻炼没有特定的控制器时,同样的代码会产生: /Bars

这会导致一个问题,没有BarsController。

我暂时手动生成这些链接,但我认为这不是最好的解决方案:

print $this->Html->url("/".Configure::read('exerciseRoutingPrefix')."/".Inflector::pluralize($exerciseName)."/view");

也许你们中的某个人知道更好的解决方案。感谢您阅读我的问题。

更新 1:

这些是route.php之前定义的路线,foreach因为它们在文件中:

0 投票
3 回答
4745 浏览

php - 如何在url https中获取json

我想使用 googleapis url 获取 timeZoneId。我希望这个 url 返回我的 json 响应,以便稍后解析它并在我的数据库中插入 lat 和 long。当它不是 googlemap url 时它可以正常工作,但是当我在代码中使用这种 url 时出现著名的“request_denied”错误:

如何从谷歌获取 url 中的 json,我想从纬度、经度和时间戳获取时区

https://maps.googleapis.com/maps/api/timezone/json?location=39.6034810,-119.6822510×tamp=1331766000&sensor=false

我尝试使用 file_get_contents 从 URL 获取数据。

但它不起作用。它总是返回“status”:“REQUEST_DENIED” 谢谢任何人得到提示。

更新

谢谢大家 :) 我签入了 php extension-> php_openssl并且它工作

0 投票
1 回答
74 浏览

php - 从 Helper 或 Component 更改数据库行 - 哪个更好?

我使用 CakePHP 已经有一段时间了,并且认为我对 mvc 原理有很好的理解。但是今天,我在坚持使用mvc的同时遇到了一个我现在不知道如何解决的小问题。

在我的数据库中,有一个表格用于我的观点的变化。它的工作原理很像 A/B 测试。当显示我的视图时,我需要选择保存在数据库中的一种变体。

所以在我看来,需要有这样的东西:

但是通过访问 getVariant(),必须在数据库中更新所选的变体,必须更新视图的数量。这就是我不想在 Controller 中使用 getVariant() 的原因,因为它只能在 View 真正需要它时运行。因为逻辑(控制器)和显示(视图)是分开的,所以我无法在控制器中确定是否需要 getVariant()。该怎么办?

0 投票
1 回答
31 浏览

cakephp - cakephp - 如何正确定义 cake php 帮助

我有一个扩展 AppController 的 ItemsController。为了处理我的站点菜单,我使用了menuhelper。但是,我在文档中看到您必须将助手添加到控制器(AppController)的数组中:

奇怪的是我忘记了它,我的菜单仍然有效。此外,您始终必须将 Form 和 Html extra 添加到数组中,否则它们将不再起作用。但是,当我在 AppController 中执行此类操作时,我的表单助手仍然可以工作:

所以似乎无论我做什么,它仍然有效,但我不明白为什么,我不喜欢自动“魔法”:)

文档中有我遗漏的东西吗?

0 投票
1 回答
201 浏览

php - cakePHP- PieChart Helper 类

我正在尝试使用这个Helper 类,它是为早期版本的 cake 编写的。它似乎利用 vendor() 方法来使用第三方类,但现在该方法已被弃用。我正在尝试在帮助程序类中使用以下内容来包含名为 eq_pie.class.php 的第三方类:

我将第三方类放在 app/vendor 文件夹中(我不确定它是否正确)助手类像这样使用它

我收到此错误:Error: Class 'eq_pie' not found,这意味着不包括第三方类。

我在这里想念什么?提前致谢