在Catalyst框架中有一个全局的init
子(在任何控制器之前执行)。我想从DB设置一些config
变量(例如晚餐管理员id
或管理员电子邮件的GPG配置)。Catalyst:全局init操作
我试图使用auto
和'开始'的行动,但这些行动只是为其相应的控制器执行。
Root.pm
文件
:
sub auto :Private {
my ($self, $c) = @_;
my $config = $c->model('DB')->resultset('Config')->single();
$c->config->{var1} = $config->var1;
};
当我请求另一控制器等Controller2
和begin
,所述$c->config->{var1}
是空..
这里似乎没有问题。 –
我认为这是“如何从数据库设置配置变量?”,但这非常含糊。这将有助于更准确地了解遇到的问题。 – ikegami