2012-02-08 8 views
2

フォームフィールドでプロトタイプページに触れようとしています。私のCatalystコントローラは、送信時にフォームからの入力を得ていないようです。

私は可能な限りテンプレート&のテンプレートを縮小しようとしましたが、私はまだこの問題を抱えています。

テンプレートは単純です:

<body> 
    <form action="/minimal-testing" method="get"> 
      <select id="select02"> 
      <option value="cat1">cat1</option> 
      <option value="cat2">cat2</option> 
      </select> 
      <select id="select06"> 
      <option value="1">1</option> 
      <option value="2">2</option> 
      </select> 
     <input type="submit" value="submit" title="submit" /> 
    </form> 
    <p> Hello, params says: </p> 
    <p> 
     [% FOR param IN params ; param.key ; ' = ' ; param.value; END %] 
    </p> 
</body> 

コントローラは次のとおりです。

sub minimal_testing :Path('minimal-testing') :Args(0) { 
    use Data::Dumper; 
    my ($self, $c) = @_; 
    $c->stash(params=>$c->req->params); 
    $c->stash(template => "dynamic/minimal-testing.tt"); 
    $c->log->debug(Dumper($c->request->params)); 
} 

私は、フォームを参照し、選択オプションから選択し、送信すると、私のデバッグログは、単に

を語ります[debug] $VAR1 = {};

明らかに私は何かが分かりにくい私はそれを見ていないだけ...私を啓発してください。

答えて

2

あなたは死んでいます。私はあなたの触媒のログは、ここで何がうまくいかないのか手掛かりを与える必要があると思う。この問題はCatalystでは問題ではありません。

基本的に、HTML形式が正しくありません。フォームの入力には、nameパラメータが必要です。このパラメータは、POSTでサーバーに戻すことができます。

 <select id="select02" name="select02"> 
     <option value="cat1">cat1</option> 
     <option value="cat2">cat2</option> 
     </select> 

idnameは、フォーム処理のためで、CSSのためです。

がいることを試してみてください、あなたは次のようにログを取得する必要があります。

[11:31:28.499 16014:debug] Body Parameters are: 

.-------------------+----------------------------------------. 
| Parameter   | Value         | 
+-------------------+----------------------------------------+ 
| select02   | cat1         | 
| select06   | 2          | 
'-------------------+----------------------------------------' 

お役に立てば幸いです。

+0

ファンタスティック。どうもありがとうございます。私はそれが盲目的に何かでなければならないことを知っていた!私はフォームの内在を乱して以来、長い時間です... "IDはCSS用、名前はFORM処理用" - 私はそのマントラを覚えています;-) – jvector

+0

あなたを助けてくれることを嬉しく思います。 「IDはDOM操作用、名前はFORM処理用」と言う方がおそらくより正確でしょう。ちなみに、あなたは答えを打ち明けることを検討したいかもしれません - それはSOシステムです。乾杯。 – RET

+0

それもありがとう - できました。 – jvector

関連する問題