问题标签 [cakephp]

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

php - 在 CakePHP 的“子”模型中保存信息

我有一个简单的CakePHP site (1.2). 我有一个页面,您可以在其中编辑和保存人员。所以我有一个 Person 模型和控制器。

在评论表中,每个人都没有或有更多评论。所以我有一个 Comment 模型,并且我的 Person 模型与 Comment 模型有一个 hasMany 关联。视图工作得很好。

我的问题是,在查看人员页面上,我有一个添加评论按钮。这应该如何工作?我应该期望 Person 控制器包含评论记录的保存,还是创建一个评论控制器并将其保存在它与人的关联之外?

我对 PHP 有经验,但对 Cake 是全新的。

有任何想法吗?我想我只是错过了一些明显的东西,但我不知道该怎么做。我觉得如果这是PHP我会在我的添加评论表单中引用 Person_id ,因此使用单独的控制器,但我觉得有一个简单模型的控制器是没用的,因为评论只在个人记录的上下文中编辑.

想法?

0 投票
5 回答
2104 浏览

cakephp - 如何在 CakePHP 的第三个 n..n (hasAndBelongsToMany) 关系中加入两个表?

我有n...n两个表的结构,makes并且models. 到目前为止没有问题。

在第三个表 ( products) 中,例如:

make我的问题是为我包含的一个特定产品创建一个视图,ProductsController这就是制作模型:

我认为这可以工作:

所以,如果我想使用listto 传递给我的视图来创建单选按钮,我将不得不foreach()在我的make数组中执行一个来查找所有模型标题并创建一个新数组并通过$this->set().

有没有更简单的方法来获取该列表而不会强调make数组。在我的应用程序中开发此类场景将是一项常见任务。

提前感谢您的任何提示!

0 投票
7 回答
8951 浏览

php - 在 CakePHP 中,如何确定某个字段是否在编辑操作中被更改?

我正在使用cacheCounterin CakePHP,它为相关字段增加一个计数器。

例如,我有一个 Person 表和一个 Source 表。Person.source_id 映射到 Source 表中的一行。每个人都有一个 Source,每个 Source 都没有或有多个 Person 行。

cacheCounter当我改变一个人的来源的价值时,效果很好。它递增Source.Person_Count。凉爽的。

但是当它增加时,它会将它添加到一个人的目标源中,但不会从旧值中删除它。我试过updateCacheControl()afterSave,但这并没有做任何事情。

然后我在我的模型中编写了一些代码,用于afterSave减去源 source_id,但即使我什至没有更改source_id. (所以计数变为负数)。

我的问题:有没有办法判断模型中的字段是否已更改CakePHP

0 投票
4 回答
1438 浏览

php - 在 CakePHP 中向 session-flash() 输出添加解除控制

在一个CakePHP 1.2应用程序中,我正在使用

输出诸如“记录已编辑”之类的消息。它工作得很好。

但是,我想添加一个名为“Dismiss”的链接,它将淡出消息。我知道如何构造链接,但我不知道如何插入到flas 消息的输出中。

flash 消息将自身包装在一个DIV tag. 我想将我的关闭代码插入到该 div 中,但我不知道如何。

0 投票
2 回答
487 浏览

regex - 如何使用正则表达式在 SimpleTest 中编写 AssertTags 测试?

我希望测试一个将生成lorem ipsum文本的函数,但它是在 html 标记中执行的。所以我不能提前知道文本内容,但我知道 html 结构。这就是我想要测试的。也许文本的长度在一定的范围内。所以我想知道的是 assertTags 是否可以通过以下方式解释:

我正在将 SimpleTest 与 CakePHP 一起使用,但我认为这应该是一个普遍的问题。

0 投票
2 回答
1035 浏览

cakephp - 在 CakePHP 中将控制器父类放在哪里?

我有两个共享大部分代码的控制器(但必须是不同的控制器)。显而易见的解决方案(至少对我而言)是创建一个类,并让两个控制器从它继承。问题是……放在哪里?现在我在 app_controller.php 中有它,但是那里有点乱。

0 投票
2 回答
575 浏览

php - 在 CakePHP 的视图中放置显示逻辑的最佳实践

我有一个 CakePHP 1.2 应用程序。

我遇到了需要执行一些逻辑才能在视图中正确呈现事物的情况。

示例:我有一个名为 Types 的表。有各种类型的标志,因此每一行都设置了一个或多个 BOOL 字段。对于一种类型,我将 RTF 的内容存储在另一个字段中。

因此,当我在视图中显示所有拼写错误的列表时,我想为存储 RTF 的类型创建一个链接。我不想显示链接,否则。

这种逻辑的最佳位置在哪里?

我想使用 html->link 来创建链接,但我不能在我的模型中使用它。逻辑是否应该进入模型,如果是,我是否应该在我的模型中构建 HTML,例如链接?

0 投票
2 回答
918 浏览

php - CakePHP中的三表模型关系

我有一个 CAkePHP 1.2 站点。我有三个相关的模型/表格:一个评论只有一个触摸,一个触摸只有一个触摸类型。

在每个模型中,我都有一个属于,所以我有Comments属于Touch,Touch属于Touchtype。

我正在尝试获取包含有关存储在 touchtype 表中的触摸信息的评论列表。

我将字段列表传递给 find()。我可以从 Touch 和 Comment 中获取字段,但不能从 TouchType 中获取。模型连接是否只有 1 级?我尝试调整递归,但这没有帮助。

0 投票
2 回答
6031 浏览

cakephp - CakePHP hasAndBelogsToMany 使用 save() 与 saveAll()

我正在使用带有 CakePHP 应用程序的非常内在的数据库,到目前为止,我的多模型视图和控制器工作正常。我有一个单数表(Entity),它id在其他几个表上作为外键entity_id

有些表是一对一的关系(比如 aCompany是一个Entity),有些表是一对多的(Entity可以有几个Addresses)等等。

我不会/不能更改数据库模型,所以这就是结构。

我一直在使用saveAll()以下输入名称在这些表上保存数据:

而我的拯救就是做所有艰苦的工作BEGIN TRANSACTION,所有INSERT的和最后的COMMIT......

但是现在我创建了EntityCategory一个对 n 的关系,并在HABTM模型内创建了完整的关系。

当我使用它时它起作用save(),但只是HABTM关系,当我使用时它会保存一切saveAll()(就像以前一样),除了HABTM关系。

我错过了什么吗?我如何使它正常工作?我今天使用以下代码:

saveAll()所有数据保存在几个表中,保存 idEntity->idsave()保存HABTM关系,但我不确定它是否正确,或者如果我更改某些结构/模型是否会给我带来问题。

这是最好的使用方法吗?有没有一种正确的方法可以在 CakePHP 中保存这种关系?您的经验/知识可以告诉我什么?

0 投票
6 回答
7466 浏览

cakephp - 当我转到第 2 页时,为什么分页器不记得我的自定义参数?

在 cakephp 视图中使用分页器助手时,它不记得为我的使用自定义的部分 url。

例如:

这里的主持人是一个参数,可以帮助我按该类型进行过滤。但是按分页器链接将不包括此链接。