DBIX类 - 多个表的相同结果类

时间:2015-01-07 15:07:24

标签: perl dbix-class

我的数据库中有很多表具有相同的结构。我想为这组表创建一个公共结果类(包DBIx :: Class),并通过某种方式动态更改表名来为所有表使用相同的类。

我该怎么做?

修改 受到@abraxxa答案的鼓舞,我正在扩展同样的问题。 在我的数据库中,我为许多具有共同结构的客户提供了一组表。在创建了一组通用的结果类之后,我想以下列方式为所有客户使用相同的结果。

客户1

tableA_1 tableB_1 tableC_1

客户N

tableA_N tableB_N tableC_N

在处理客户N时,我想管理tableA,tableB和tableC,以便维护它们的关系。比如,如果我从tableA中访问tableB,那么对于客户1,它应该访问tableB_1,对于客户N,应该访问tableB_N。

您能否概述一下tableA的基类,然后概述一个类的子类。

1 个答案:

答案 0 :(得分:3)

创建一个Result基类,并为每个只调用

的现有表创建子类
__PACKAGE__->table('tablename');

在每个子类中。 由于它们之间的关系,DBIx :: Class仍然需要知道所有现有的表。

相关问题