如果你有一个数据模型,其中一个表是一个guid只有一guid列的表,并且许多表都有一个引用它的主键guid,你会如何建议将这种类型的逻辑合并到 Yii 中?要为任何有能力的事物创建一个新模型guid,您必须先创建一个guid。放置这种逻辑的正确位置在哪里?
编辑:更具体地说,这是我面临的问题:
- 我有一个 guid 表
tbl_guid,其中有一列guid是 MySQLBIGINT - 一些表,如,
tbl_foo有一个 PKguid引用guidtbl_guid - 模型有
Foo关系self::BELONGS_TO, 'Guid', 'guid' - 在完全准备好创建之前,我不想创建新的 guid
Foo - 我想以某种方式延迟我的保存,
guid直到我真正保存(并以其他方式验证)Foo - 但是,
Foo永远不会验证,因为它没有向导。
编辑2:我已经发布了自己的答案,但我希望有人有更好的答案/改进建议。以下是我的回答存在的问题:
- 我们如何强制它
owner遵守某些接口,这样我们就不必投入一堆条件来检查它是否owner具有属性或方法等 - 即使数据库不接受
nullfor ,从所需属性列表中guid删除似乎仍然是错误的。guid