[英]multiple models, same table in lithium
我在表中有一堆DNS记录,其中的“类型”列定义了给定记录的类型。
我希望在Lithium中有一个模型的类层次结构来表示这些记录,例如:
RR - base resource record (abstract - sort of)
RR_SOA - SOA record, extends RR
RR_CNAME - CNAME record, extends RR
... etc ...
因此,每条记录一个类,所有类都映射到同一张表。
接下来,我想使用RR :: find,它会自动给我一个对象列表,其中每个对象的类对应于实际记录的类型。
如果没有太多的黑魔法,这是否有可能?
是的(一切皆有可能),但您的方法可能过于雄心勃勃。 在我的POV中,我将依靠@class RR
来处理目标表的基本查询,但是通过利用RR
上的过滤器(特别是基于从Model
继承的find
方法),您可以将实例传递给引用集新实例化的类(SOA,CNAME等)及其在表中的位置(因此SOA对象仅与该特定记录或主键相关联)。
发生了一些不可思议的事情,但是锂核心开发人员并没有考虑。
底线,表的一个基类(RR模型),多个(可能从与模型无关的另一个基类继承)的SOA,CNAME等...,以及用于干预RR :: find和/或后期绑定的RR :: findby *
这有意义吗?
(这将需要一些试验和错误。首先看看您是否可以操纵数据输出,然后剩下的就是黄油了)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.