【发布时间】:2014-04-08 11:36:09
【问题描述】:
我阅读了一些行为,并认为它可能适合我的简单要求,但我不知道如何开始创建自定义行为。
场景: 我有一个名为 Companies 的 master 表。此表与详细表 BusinessDescriptions 和Addresses 具有“hasMany”关系。当然,这些明细表通过外键链接到 Companies 表。
尽管存在“hasMany”关系,这些明细表中只有一条记录可以在任何特定日期有效。因此,在 BusinessDescriptions 和 Addresses 的明细表中,我有字段“Startdate”和“Enddate”,告诉您记录的有效时间段。
使用示例:X 公司将从 01.01.2015 开始使用新地址。因此,在插入新地址时,其旧地址记录从 Startdate 01.01.2014 到 Enddate 31.12.9999,需要将其 Enddate 更改为 31.12.2014,以便为从 01.01.2015 开始的新记录让路。
所有这些对现有记录的开始/结束日期的“自动定界/调整”,我希望将其放入一个行为中,但是很难找到有关启动和运行自定义行为的教程。
谁能告诉我如何开始,或者向我展示为此创建行为的骨架结构?
【问题讨论】:
-
我希望大多数逻辑能够检测重叠,将新记录与现有记录进行比较,以在模型行为代码中完成,而控制器可能会根据需要调用模型/行为函数,传递相关信息。但是是的,我真的不知道如何开始
-
你从现有的(插件)行为中学到了很多东西,从简单的行为到更多的complicated ones。这应该让你开始学习如何在你的行为中写东西。
标签: cakephp model bdd behavior