问题标签 [cakephp-3.7]

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

cakephp - 需要几个值之一

我有一个包含 5 个布尔列的表。我想强制用户至少选择一个。有没有办法使用$validatorTable PHP 中的 CakePHP 对象来做到这一点?

我可以很容易地在控制器中完成此操作,但使用内置的东西似乎不太错误。文档中的任何内容都没有引起我的注意。.

控制器示例:

0 投票
1 回答
132 浏览

cakephp - cakephp3.7中选择查询中的深度关联

我是 cakephp3 的新手。我无法加入关联的表数据。我有

  1. 员工表。
  2. EmployeeLogins 表
  3. EmployeeCategories 表

关系:Employees 表有Many EmployeeLogins 和EmployeeLogins 属于EmployeeCategories

我正在使用包含但没有获取 EmployeeCategories 数据。

我想要的结果就像在单个结果集中

输出 :

雇员表.php

EmployeeLoginsTable.php

EmployeeCategoriesTable.php

控制器中的代码

0 投票
1 回答
294 浏览

cakephp - 找不到 HybridAuth 重定向 URL 设置

不是Facebook 登录消息的重复:“URL 被阻止:此重定向失败,因为重定向 URI 未在应用程序的客户端 OAuth 设置中列入白名单。”

这个问题是关于 CakePHP 发送错误的 URL。完全理解为什么 Facebook 不喜欢 URL,不清楚如何在 CakePHP 中修复它


尝试为 Cakephp 使用这个 HybridAuth 插件,除了重定向 URL 有 http 之外,一切似乎都在工作,这是 facebook 不喜欢的。我需要使它成为https。我无法弄清楚如何操纵这个值。

这给了我这个错误,这是有道理的:

我一直在尝试解决这个问题大约两个小时。我试过设置

在 AppController 中验证 HybridAuth 的设置,这似乎没有做任何事情。还在互联网上尝试了很多随机的东西,这些东西似乎破坏了更多的东西。我现在有点迷路了。

新更新

我已经跟踪了这个 URL 的来源,就在 中的loginBegin方法hybridauth/Hybrid/Providers/Facebook.php$this->params['login_done'];虽然我现在不确定它的设置位置。

旧更新

无论我做什么,更新 Appcontroller 身份验证设置似乎都不会影响这个特定的 URL。我相信此设置与“URL 登录完成”重定向 URL 有关,我的问题与“URL 开始登录”URL 有关,但我并不完全确定。

0 投票
1 回答
209 浏览

rest - cakephp crud 插件返回验证错误

当使用Crud 插件Crud.Api监听器修补记录时,成功的 PATCH200 OK在响应中返回一个空数据数组。

当 PATCH 后验证失败时,将422 Unprocessable Entity返回具有以下响应的 a:

但我期待的是:

https://crud.readthedocs.io/en/latest/listeners/api.html#http-put-edit

如果成功为假,则将返回 422 的 HTTP 响应代码,以及响应正文的 data 属性中来自模型的验证错误列表。

插件是否需要配置为返回错误?

0 投票
1 回答
100 浏览

php - CakePHP LocaleSelectorMiddleware 不工作

我只是无法在 CakePHP 3.7 中调用以下代码。我已将浏览器上所需的语言更改为法语,但它不起作用,我只得到英文版本。是的,我确实有所有正确的 .po 文件。

0 投票
0 回答
157 浏览

cakephp - 如何使用 foreach 从两个表中检索数据 使用 CakePHP

所以我需要从多个表中获取数据,但我在这样做时遇到了麻烦。

我有两个模型类:

  • Thesis_Supervisor : 有一个主管 id 和一个论文 id
  • 论文:有关于论文的所有信息(id,主题,作者......)

我想做的是,考虑到一个主管身份,我想知道他监督的论文以及关于论文的所有信息。

这是我的代码:

在我的论文主管控制器中,我有这个功能:

这个功能是:

  • 将所有论文链接到给定的主管
  • 使用 foreach 来完成不同的论文
  • 将论文信息存储在变量结果集中
  • 将其返回到视图

这是视图中的代码:

因此,使用此代码,我确实找到了正确数量的结果,但在视图中无法识别它们,我在论文的每个领域都得到了这种类型的错误:

我尝试了许多不同的语法来做到这一点(我尝试删除 foreach 中的 ->toArray 以获得一个对象,但我对论文的每个字段都有一个未定义的属性错误),但它们都不起作用。我认为问题是将每个 foreach 循环的结果添加到结果集变量中,但我不知道如何解决它......

编辑:正如 ndm 在他的评论中建议的那样,我更多地研究了关联(因为我的模型类与关联链接在一起),这里是我的最终代码:

它比我的原始代码简单得多,并且运行良好。

0 投票
2 回答
444 浏览

cakephp - Cakephp 3.7.4 Auth哈希密码不起作用

我正在尝试实现身份验证登录并注册 cakephp 3.7.4

我为 UsersController 添加方法使用了以下代码

但它不能以哈希格式保存密码

我也创建了实体并使用了这个功能,但它也没有帮助我

0 投票
1 回答
48 浏览

cakephp - 具有属于两个更高模型的深度关联的保存模型

我有三个表,ArticlesCommentsTags

Tags属于ArticlesComments

出现以下错误:

但是如果我只保存'associated' => ['Comments']它可以保存ArticleComments连接表关联,只是不保存任何Tags.

Articles表有这些关联:

Comments表有这些关联:

Tagstable 有这些关联:

这是修补后的实体看起来像这样。

0 投票
1 回答
163 浏览

php - 如何在 BelongsToMany 关联中正确保存数据?

我的应用程序管理电子产品车间的维修订单。当我尝试保存几个相同的项目(具有相同的 id)时,蛋糕只保留最后一个条目,忽略以前的条目。(在我的例子中,最后一个产品)

我试图在模型中配置“saveStrategy”,尝试使用“append”,但没有结果。当我输入不同的产品(具有不同的 ID)时,它可以毫无问题地保存它。

表:

门票

产品

产品展示_门票


它应该保存的是所有数据,而不仅仅是最后一个值。

我该如何解决这个问题?

0 投票
1 回答
5519 浏览

cakephp - 缺少 Csrf 令牌 cookie

我对 CakePHP (v3.7) 比较陌生。我有一个应用程序,其中出现“缺少 Csrf 令牌 Cookie”错误。

在 Application.php 中,我有:

表单页面有一个隐藏的表单元素,其中包含_csrfToken。我很困惑为什么在 POST 上找不到它?

进一步挖掘,我发现在CsrfProtectionMiddleware.php中,下面的_validateToken()函数的行为如下:

$cookiesnull(没有设置 cookie。)因此,$cookienull

$post实际上包含了页面隐藏参数中的_csrfToken参数的内容。但是,该功能从不查看它。因为$cookie为 null,所以if(!$cookie)语句会导致抛出InvalidCsrfTokenException 。

显然,除了隐藏参数之外,中间件还需要一个实际的 cookie。这个 cookie 设置在哪里(或应该设置?)

更新:

我检查了浏览器端。正在设置 cookie,但浏览器没有在 POST 请求中返回它。

这是 CakePHP 对填充页面的原始 GET 请求的响应:

注意 csrfToken cookie。...这是浏览器与表单数据一起发回的 POST

查询字符串参数

表格数据

请注意,它发送回隐藏的表单参数_csrfToken,而不是 cookie。

谢谢你的帮助...