问题标签 [cakephp-3.x]

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

cakephp - 如何在 HtmlHelper 等控制器中创建 URL

TLDR:如何在控制器中创建 URL,类似于使用 HtmlHelper 在视图中创建 URL?


问题:

我想在我的控制器中打印控制器操作的 url(因为我在控制器中创建我的 JSON 字符串,而不是在视图中)

在 aView中,我可以使用$this->Html->url(),但是在 Controller 中呢?

我应该使用定义的常量,例如APP_DIR+ 控制器名称 + 控制器操作吗?)

0 投票
3 回答
10227 浏览

cakephp-3.0 - 检查对象在视图模板中是否存在或为空

如果结果对象包含任何条目,如何在视图模板中检查?

(已经有一个类似的问题,但这一个略有不同)

CakePHP 3 博客教程为例。他们展示了如何在一页上列出所有文章:

和视图模板:

缺点:如果数据库中没有条目,仍会呈现 HTML 表。

我怎样才能防止这种情况并显示一个简单的消息,比如“抱歉没有结果”?

CakePHP 2我用过

但是既然$articles现在是一个对象,这不再起作用了......是否有一种新的“捷径”来检查结果对象?还是您通常先使用另一个 foreach,例如

感谢您的提示。

0 投票
1 回答
665 浏览

php - 如何匹配与特定的其他记录集相关联的记录?

我正在尝试为我的项目添加两个不同的搜索变体。有一个模型“用户”和一个模型“标签”。一个用户有很多标签。现在我希望能够搜索具有特定标签的用户。要么我想显示具有任何指定标签的所有用户。我是这样工作的:

但现在我想找到同时拥有两个标签的所有用户。我试过->andWhere代替->orWhere,但结果总是空的。

如何找到包含多个标签的用户?

谢谢

0 投票
1 回答
2759 浏览

validation - CakePHP3 中令人困惑的验证与应用程序规则

关于验证的多个问题可能属于一起,因为它们都在处理 CakePHP 3 中的新验证概念。

我已经多次阅读食谱中的章节(1、2、3 但老实说,我不明白如何以正确的方式去做。我也知道目前在 GitHub 上有一个关于 CakePHP3 中的验证的问题/讨论,它可能涉及相同的主题。

验证错误被触发,例如使用 patchEntity。因此,我认为在执行保存操作之前始终检查/显示错误会更好:

为什么食谱教程$user->errors()在保存数据之前不使用?据我了解,save如果已经存在验证错误,则不需要调用它?!另一种方法是结合错误检查和保存操作:

你在用这个吗?我应该使用它吗?或者如果不是,为什么不呢?

为什么即使我没有$user->errors()在控制器中使用 CakePHP 也会显示验证错误,就像在所有食谱示例中一样?我以为save不会检查实体验证?!

示例:isUnique

根据食谱, “确保电子邮件唯一性”是应用程序规则的一个用例。

该错误只能通过save控制器中的 -call 触发。但也可以在验证中检查唯一性。为什么不这样做更好?

如果我可以在验证中添加 ApplicationRule,为什么我会/应该使用 ApplicationRules?

我如何在 ApplicationRule 中定义规则何时应仅应用于特定操作(并非所有创建/更新调用)?

patchEntity当在-call之后操作实体时,我也没有看到或理解两个单独的验证状态的好处。

如果我自动向实体添加一些值,我想确保这些值在将它们保存到数据库之前仍然有效(如在 CakePHP2 中)。所以我想总是 使用验证作为应用程序规则更好/必要?!

你一般如何处理这个问题?是否有其他示例可用于显示/展示验证与应用程序规则的好处和一些用例?

0 投票
2 回答
2520 浏览

cakephp - 将默认顺序设置为 CakePHP 3.x 模型

在 CakePHP 2.x 中,可以orderBy在模型中设置一个值作为该表上每个查询的默认顺序。

在 3.x 中,文档中没有提到这一点,我尝试对变量或方法名称进行合理猜测来实现这一点并没有奏效。

有人知道这是否仍然可能吗?

0 投票
1 回答
260 浏览

php - Cake PHP 3 Paring Routing with a table

我一直在尝试使用带有 Cake 的路由器获得漂亮的 url。

www.mysite.com/category/slug

www.mysite.com/slug

www.mysite.com/category/

我认为没有公式可以准确地得到我想要的,所以我想明确匹配每个 url。我希望我的路由表看起来像这样

所以当有人去 www.mysite.com/mysubcategory/my-title-of-page

我希望它与 url 列交叉引用“mysubcategory/my-title-of-page”并继续。做这个的最好方式是什么?

我的猜测是将所有流量引导到路由控制器

但是当它重定向时,我希望它在浏览器中显示漂亮的 url,我不希望它显示articles/view/12

谢谢你

0 投票
1 回答
1733 浏览

cakephp - CakePHP 3 按嵌套关系查询构建器顺序

订单功能的文档还不够好。这就是我所拥有的:

表 A <---- MiddleTableAB ----> 表 B <--- MiddleTableBC ---> 表 C

所以我有一个表 B 与表 A 具有多对多关系,并且与表 C 也具有多对多关系。

我需要的是表 B 的项目列表。它们需要按表 A 的 ID 分组,然后按表 C 的 ID 分组。

这就是我在 Table B 函数中的内容:

但是蛋糕说没有TableA.id。如果我删除群组通话,我将获得构建所需结果所需的所有数据。我怎样才能使这项工作?

0 投票
2 回答
543 浏览

php - 如果 url 中的临时密码通过验证,如何在 CakePhp 3.x 中允许控制器操作?

我已经设置了一个忘记密码的场景,用户提交电子邮件地址,获取发送给他们的临时密码,然后用户单击要发送到用户编辑功能的链接,以将密码更改为他们可以记住的密码。我在 url 中传递临时通行证。

我调试了我能做的事情,它似乎正在结帐,但仍然不允许未登录的用户访问编辑方法。它似乎只授权登录用户(如果他们忘记了密码,因此无法登录,你可以看到我的问题)。

那么,如果临时通道与 url 的 id 参数匹配,您将如何允许访问控制器方法?

is授权功能:

示例链接地址:http://localhost/site/users/edit/1?pass=o1eNbs5l7GlHlqvPAmU.

0 投票
0 回答
244 浏览

elasticsearch - 在 CakePHP 3 中获取 Elasticsearch 的最高分数

我正在尝试将 Elasticsearch 与 CakePHP 集成,但我不知道如何max-score在 json 响应中获得类似的东西:

我的控制器中的查询按预期工作,我知道必须有一种方法可以在查询后获得最高分数。

0 投票
3 回答
6635 浏览

php - CakePHP 3.0:响应为 json

我正在创建一个 CakePHP 3.0 REST API。我按照这个说明(书中的路由)并在 json 中收到了响应。这是我的代码。

01 src/config/rout.php

02 src/controler/UsersController.php

03 向该 URL 发送 post 请求

http://domain.com/users/view.json

输出:

但我想在没有.json扩展名的情况下输出 json。先感谢您。