【发布时间】:2012-10-14 13:12:36
【问题描述】:
我正在尝试制作一个包含大量 crud 操作的 crm 应用程序。所以我有像
这样的控制器类CRM::Cities
CRM::Countries
不,我使用 ORLite 作为轻量级 ORM。它像这样创建 -on the fly- 类
Model::Cities
Model::Countries
现在说我要加载一个城市。在 CRM::Cities 类中,我必须做类似的事情 (ORLite 使用类方法进行访问)
$obj1 = Model::Cities->load($id);
在 CRM::Countries 中加载当前国家/地区:
$obj1 = Model::Countries->load($id);
所以我最终在每个控制器类中包含相似的行。
我希望能够在 CRM 包(基本控制器类)中做类似这样的通用操作:
$obj1 = Model::$package->load($id);
# package contains Cities or Countries, determined at runtime
我尝试了各种变体,使用 eval 等等,但这是更高阶的 perl。我认为 b/c ORLite 方法是类方法,继承不太明显。有人可以给建议吗?蒂亚!
【问题讨论】:
标签: perl class inheritance oop