在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