问题标签 [cakephp-3.5]

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

cakephp-3.5 - 假网址缩短器

我想重定向www.myhost.com/g/:idwww.myhost.com/jobs/view/:id. 目前,以下代码可以做到这一点:

但是,在地址栏中它仍然显示www.myhost.com/g/:id. 我希望它显示完整的 URL ( www.myhost.com/jobs/view/:id),而不是“缩短”的 URL。

我将如何调整代码来执行上述操作?

0 投票
0 回答
49 浏览

cakephp - HABTM 的可视化

我正在寻找一种使网站上的 HABTM 关系更加美观的方法。默认情况下,这些都显示在一个长列表中。要一次选择多个,必须按住 Ctrl。

我可以想象一个拖放系统,其中有两张桌子并排在一起。右表中的所有内容都被视为已选中。 https://imgur.com/a/VmMHQjd

不幸的是,我不确定如何做好。到目前为止,我唯一的方法是从 cakephp 自动创建一个表并创建第二个空表。

如果页面打开,javascript 将隐藏 cakephp 表中未选择的所有内容(即正确的表)。然后,在仍然空的表中,脚本将写入对另一个隐藏的所有内容。

如果您现在单击其中一个表中的一个对象,javascript 会将其隐藏在此表中并显示在另一个表中并(取消)选择它。

这种实现对我来说听起来相当困难且容易出错。你有什么好主意我可以在这里做什么吗?可能是插件或方向的东西?不幸的是,我在搜索中找不到任何关于此的内容。但我无法想象没有人处理过这个问题,因为 cakephp 的 HABTM 表示并不是那么好。

0 投票
1 回答
233 浏览

cakephp - 在 CakePHP 3 中查询以查找两个日期之间的记录时出现错误“调用数组上的成员函数 format()”

我想查找两个日期之间的记录,所以我编写了以下代码:

date_registered是一datetime列,所以我尝试了这两种格式

即日期('Ymd')和日期('Ymd H:i:s')

情况是这样的,

但我收到一个错误(详细信息)

如何摆脱这个问题/问题?

0 投票
0 回答
191 浏览

cakephp-3.5 - CakePHP 通过 Rector 升级,具有输入类型数组声明的函数

我第一次尝试使用rector ( https://github.com/rectorphp/rector ) 来升级我的CakePHP 应用程序。我首先在本地开发环境中工作。

我有点头疼。例如,我创建了以下简单的 php 类:

我运行以下命令:

我收到以下错误:

问题在于函数中输入变量的“数组”类型声明。我删除它,代码通过了校长测试。

我用谷歌搜索,找不到任何东西,这让我觉得我错过了一些非常简单的东西。有什么帮助吗?

0 投票
1 回答
80 浏览

php - 在文件 Controller\AppController.php 中找不到类“MongoClient”

您好我正在尝试mongo DB(Version 3.4.18)使用连接CakePHP (version 3.5.1) with Apache server on PHP (7.2.4)并面临以下错误

对于 mongo db 连接尝试下面的代码

注意:我必须在mongo DB(Version 3.4.18)使用CakePHP (version 3.5.1) with Apache server on PHP (7.2.4)这些特定版本时这样做

更新- 我们尝试使用php_mongodb-1.4.0-7.2-ts-vc15-x64这个 .dll 文件在 Windows 上

0 投票
0 回答
57 浏览

cakephp - Cakephp 3.5:如何在不使用 Fixture 进行 phpunit 单元测试的情况下测试登录功能?

我在我的应用程序中使用 Cakephp-3.5 Auth Component 来验证用户的凭据。现在我必须为登录表单写下单元测试用例。我必须编写不使用 Fixtures 的测试用例,而只能在 phpunit 中编写。我无法弄清楚如何解决这个问题?

0 投票
1 回答
203 浏览

php - i18nFormat 中缺少时区

在将我们的应用程序迁移到 PHP 7.2 和新的服务器环境后,我在获取时区以显示在 CakePHP 3.5 中的 Time/FrozenTime 对象的 JSON 结果中时遇到了一个奇怪的问题。

像这样格式化新的 Cake\I18n\Time 时会出现一个简化的示例:

以前这会返回一个像这样的字符串:

2020-01-31T10:57:43-07:00

但是在我们的新环境中,相同的代码无法返回时区部分,而是返回如下结果:

2020-01-31T10:57:43

在内部,跟踪 i18nFormat 到Cake\I18n\DateFormatTrait::_formatObject,它们似乎都在调用 datefmt_create 完全相同的参数:

但这似乎返回不同的结果,“xxx”部分没有效果。

是否有一些环境设置会影响这一点?还是其他原因造成的?

如何取回时区部分?

0 投票
1 回答
403 浏览

php - 在 CakePHP 3 中使用 IFNULL ... GROUP_CONCAT()

我有一个香草 MySQL 查询,如下所示,它工作正常:

这样做的背景是我有 2 张桌子,displays并且display_substances. 我想为给定的物质 ID(在上面的查询中表示)呈现每一行的表displays和相应的值。display_substancesds.substance_id = 2

并非每一行displays都有对应的display_substances值。如果是这种情况,它应该输出“未列出”字样。这实际上意味着,如果没有相应的行display_substances——那么就没有相应的数据display.id——因此该特定行的数据在数据库中是“未列出”的。上面的查询正是这样做的。

我希望能够使用 CakePHP 的 ORM 语法编写我的查询。

表的结构如下。

表类存在并定义了适当的关系。

到目前为止,我有这个:

这将为我提供物质 ID 2displays具有相应值的行display_substances。这实际上是我们拥有数据的所有内容,但不包括任何“未列出”的行。

我不知道如何IFNULL...GROUP_CONCAT使用 Cake 的 ORM 语法编写我的香草 SQL 查询的一部分。

我已经阅读了如何在 cakephp 查询中使用 group_contact?所以可以看出可以GROUP_CONCAT->select()条件下使用。但是链接的示例要简单得多,因为它不使用IFNULL条件和相应的操作(返回“未列出”)。

如果可能的话,请有人建议如何用 Cake 的 ORM 语法写这个?

CakePHP 版本是 3.5.18