cakephp 3:bake添加了不希望的规则“ $ rules-> isUnique(['email'])”

时间:2018-08-29 07:07:23

标签: cakephp cakephp-3.x cakephp-bake

我正在烘焙一个表,该表保存了所有从我的客户登录的尝试,由于某种原因,bake命令添加了此规则。

$('[id^=name_]').each(function() {
    //do something
});

这是不希望的,因为我想保存每次记录尝试期间发送的所有数据。

我花了一段时间才尝试用同一封电子邮件保存许多记录,为什么会出错。在我的数据库中,此字段未标记为唯一,但bake决定应用该规则。问题是这是一个错误还是有一种设计好的方法来避免这种不良行为。

1 个答案:

答案 0 :(得分:1)

为恰好具有名称$rules->isUnique()的字段添加email的这种烘焙行为是“功能”。 (但是当您不想不希望电子邮件具有唯一性时,这很烦人。)

恭喜您找到问题所在!

最好的解决方案是注释掉XXXsTable.php文件中有害的代码行-或者,如果您确定自己永远不需要它,只需删除该行即可。

将字段的名称更改为与email不同的名称可能不是一个好主意,因为您可能有一个很好的理由首先选择了该名称。

请记住,bake创建的所有文件只是一个起点,您可能需要对它们进行大量编辑才能实现您的应用程序。