2

私は初めての Mojolicious アプリケーションを開発しています。今まで開発ディレクトリから実行していましたが、今は運用サーバーにインストールしたいと考えています。 mojo generate appテンプレートと静的ファイルを保存するために使用してきたディレクトリ templates/ と public/ を作成しました。Dist::Zilla で簡単なディストリビューションを作成しましたが、実行時に templates/ と public/ にアクセスできませんでした。

私が持ってきた解決策は、templates/ と public/ を新しいディレクトリ share/ に移動し、File::ShareDir (または Dist::Zilla の ShareDir プラグイン) がそれを取得できるようにすることです。 *_mode メソッド:

sub development_mode{
    my $app = shift;
    push @{$app->static->paths}, rel2abs(catdir('share', 'public') );
    push @{$app->renderer->paths}, rel2abs(catdir('share', 'templates') );
}

sub production_mode{
    my $app = shift;
    push @{$app->static->paths}, catdir(dist_dir('FooBar'), 'public') ;
    push @{$app->renderer->paths}, catdir(dist_dir('FooBar'), 'templates') ;
}

これを行うためのより公式な方法はありますか?

4

1 に答える 1

1

いいえ、ガリレオと、これを行うより一般的なプラグインの両方に対して、それが私が行う方法です:Mojolicious::Plugin::InstallablePaths

于 2013-04-10T03:48:46.757 に答える