【发布时间】:2015-01-09 13:50:29
【问题描述】:
我正在尝试为 DBIX::Class 中的多个结果类使用一个公共基类。原因是 - 我的表结构相同但名称不同。
这是我的基类
use utf8;
package myapp::Schema::tablebase;
use strict;
use warnings;
use base 'DBIx::Class::Core';
__PACKAGE__->table("unknown");
__PACKAGE__->add_columns(
"id",
{ data_type => "smallint", is_nullable => 0 }
#, ... and lot more
);
这是实际的结果类
package myapp::Schema::Result::ActualTable;
use base 'myapp::Schema::tablebase';
# Correct table name
__PACKAGE__->table('patient2');
1;
我收到了这项工作的编译错误。请帮我解决这个问题。
更新:
我得到的错误是 -
DBIx::Class::Schema::catch {...} (): 尝试 load_namespaces() 类 myapp::Schema::Result::ActualTable 失败 - 你确定这是一个真正的结果类吗?:无法通过 C:/Strawberry/perl/site/lib/DBIx/Class/Schema.pm 第 195 行的包“myapp::Schema::Result::ActualTable”找到对象方法“result_source_instance”。在 C:/Strawberry /perl/site/lib/myapp/Schema.pm
【问题讨论】:
-
如果您遇到编译错误,向我们展示错误消息的确切内容会很有帮助。
标签: perl dbix-class