問題タブ [dancer]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
perl - Test :: WWW :: Mechanize :: PSGIを使用してDancerアプリケーションをテストするにはどうすればよいですか?
wwwmechanizeのスクリプトアプリを設定する正しい方法がわかりません。動作する代替案を少なくとも1つ試しましたが、テストスイートを使用してロギングをより静かにすることができるように、テストで構成を渡そうとしています。
スクリプトで実行do
するとテストを実行できるように見えますが、ロギング変数が正しく設定されておらず、同時にそれを行うためのより良い方法があるようです。
アップデート
私は解決策に近づいているかもしれないと思います...
これは、PlackPSGIのDancer::Deploymentドキュメントから取得しました。ただし、テストで500エラーが発生します。
DBIエラーはここでは関係ありませんが、私が取得するエラー出力の一部です。なぜ見つからないのかわかりません/login/default.tt
。問題のテンプレートがにあるので、ビューフォルダがどこにあるのかわからないことが問題だと思いますviews/login/default.tt
。このビューは、で実行している場合でもブラウザで正常に機能しplackup
ます。私は困惑しています。
perl - これらのテストをよりDRYにするにはどうすればよいですか?
現在、いくつかのテスト ファイルの先頭に次のものがありますが、DRY ではありません。しかし、これを独自のファイルに移動する最良の方法が何であるかはよくわかりません。助言がありますか?
アップデート
残念ながら、これをライブラリに移動する際の問題の一部は、実行するとすぐにコードが機能しなくなることです。サブルーチンにカプセル化して戻そうとしました$t
が、うまくいかないようです。ライブラリに正確に何が必要で、テストに正確に何が必要かを理解しようとしています。
perl - perlダンサー:テンプレートのforeachは最初の値のみを出力しています
Dancerで本当に単純な問題があるはずです。名前の配列があり、それぞれをテンプレートに印刷したいと思います。これらの名前は、(データベースではなく)外部ソースから取得されます。ただし、テンプレートのリストに対してforeachを実行しようとすると、最初の値しか取得されません。
コード:
そしてテンプレート:
これは、単一の項目「one」を含むリストのみを出力します。私は何が欠けていますか?
perl - Dancerperlを使用した複数のアプリディレクトリ
ダンサーに1つのアプリを含めるが、複数のappdirを使用する方法はありますか?
または私はこのようなことをすることができます:
私のプロジェクトはdir'foo'にあります。そして、「public」というディレクトリを持つdir「bar」(「foo」内ではない)があるとしましょう。私のアプリ「foo」は、このパブリックを独自のパブリックとして使用します。「/ css / style.css」を検索し、「/ bar / public /」にない場合は、「/foo/」を検索する必要があります。公衆/'。どうやってやるの?
perl - Dancerを使用するときにテンプレートツールキットにvmethodを追加するにはどうすればよいですか?
Dancerを使用するときにテンプレートツールキットにvmethodを追加するにはどうすればよいですか?
方法がない場合、関数を追加するにはどうすればよいですか/トークンに追加された関数への参照を実行する方法/?
perl - make test を実行すると、ダンサー環境が「test」に設定されたテスト スイートが実行されるようにするには、Makefile.PL をどうすればよいですか?
ダンサー アプリの最上位ソース ディレクトリ (「dancer -a appname」によって生成されたディレクトリ) に「make test」と入力するだけで、環境を「test」に設定してテストを実行できるようにしたいと考えています。
または、このための一種の「ダンサーアプリを開発するためのベストプラクティス」として参照できるリポジトリを誰かが教えてくれれば、それは素晴らしいことです!
perl - フック後のPerlダンサー
リクエストごとにコードを実行する方法はDancerにありますか?
アフターフックを試してみましたが、ファイルリクエスト後に実行されないようです...リクエストごとにかなりの回数実行される「after_file_render」というフックがありますが、その目的はわかりません。すべてのリクエストの後に常に呼び出されますか?
perl - ダンサー リクエスト パラメータのエンコーディング
「cp1251」でエンコードされたページがあり、フォームを送信すると、パラメータは「cp1251」になります。しかし、Dancer で自分のパラメーターにアクセスすると、'?' マークしか表示されません。渡されたデータにアクセスするにはどうすればよいですか?
アップデート:
すべてのパラメータで呼び出される Request.pm に _decode /below/ というサブがあるようです。ダンサーにこのサブを呼び出さないように指示する方法はありますか?
アップデート2:
データを取得する方法を見つけました。使用する必要がありましたが、破損するため、その前にrequest->{_http_body}->{param}
呼び出すべきではありません。params
Update3:
charset
それを機能させるには、「config.yaml」からを削除して追加する必要がありました
request->{_params_are_decoded} = 1;
前のフィルターで。