今回は設定に関してです。ここまで分かれば簡単なアプリケーションは作れるかな。
後はデプロイに関しても調べなきゃいけないとは思うのですが、外部公開とかしない限りは組み込みスタンドアロンサーバで十分なのでしばらく放置します。
テストに関しては時間があったら触れてみたいとは思います。Dancer::Testというテストモジュールがあるようなので。
環境設定ファイル
Dancerのグローバルな設定ファイルは/config.ymlに置かれます。拡張子をみれば分かるとおりYAML形式で記述されます。
また、環境ごとに設定ファイルを分ける場合には/environment/'環境名'.ymlに設定を記述します。起動時に環境の指定がない場合、/environment/development.ymlが読み込まれます。
組み込みスタンドアロンサーバの場合。
perl 'アプリケーション名'.pl --environment '環境名'
設定項目
- server (string)
- アプリケーションがバインドするIPアドレス。デフォルトでは0.0.0.0になっており、全ての有効なインタフェースにバインドされる。
- port (int)
- 待ち受けポート。デフォルトでは3000
- daemon (boolean)
- 真の場合、バックグラウンドでスタンドアロンサーバが起動する。
- content_type (string)
- デフォルトはtext/html。
- charset (string)
- デフォルトは空。
- public (strinng)
- 静的ファイルを置くディレクトリパス。デフォルトは/public。
- layout (string)
- layoutテンプレートの指定。/views/layoutディレクトリ以下にある一致したファイルをlayoutテンプレートとして使用する。
- warnings (boolean)
- 真の場合、全てのwarningをbrocking errorとして処理する。
- log (enums)
- ログレベルの設定、debug,warning,errorから選択できる、
- debug - 全てのメッセージを記録する。
- warning - warningとerrorのみ記録する。
- error - errorのみ記録する。
- ログレベルの設定、debug,warning,errorから選択できる、
- show_error (boolean)
- 真の場合、エラー時にデバッグスクリーンを表示する。偽の場合、publicディレクトリにあるエラーコードに応じたデフォルトのエラーページを表示する。
- auto_reload (boolean)
- 真の場合、ファイルが更新された際、ルートハンドラーをリロードする。
- 開発時には有用だが、実運用時には無効にすべきとのこと。
- session (enum)
- 使用するセッションエンジンの指定。デフォルトではセッションは無効。
- セッションに関しては3回目で少し触れています。
環境設定にアクセス
コード内で環境設定を変更するにはsetを使用します。
# set '設定項目' => '設定内容' set port => 8080;
コード内で環境設定を取得するにはconfig->{}を使用します。
# config->{'設定項目'}
config->{port};
参考
- Dancer公式サイト
- 過去の記事
- Dancerを試してみた 1
- Dancerを試してみた 2
- Dancerを試してみた 3
- POD
- Dancer
- Dancer::Introduction
- Dancer::Cookbook
- Dancer::Config
- Dancer::Session