2

Symfony2で2つの別々のサイトを開発していますが、送信されたフォームを処理するときに両方で奇妙な問題が発生しました。

どちらのサイトにも、フォームの表示と送信の処理の両方に使用されるアクションがあります。GETリクエストとPOSTリクエストの両方を処理するため、$this->getRequest()->getMethod()チェックされます。GETの場合は、フォームを表示します。POSTの場合は、エンティティに永続化します。

ただし、データを投稿してもgetMethod()必ず戻ってくるようです。ブラウザのネットワークインスペクターがフォームをPOSTリクエストとして送信し、送信したばかりのフォームのコンテンツを出力すると言っているためGET、リクエストの方法が必要であることを私は知っています。POSTvar_dump($_POST);

サイトは、CentOS6.3の両方の別々のサーバーで実行されています。私は、提出物をうまく処理する3番目のサイトを実行している3番目の同様のサーバーを持っています。これを引き起こしている可能性がありますか?

4

1 に答える 1

3

私はそのような問題を何度か経験し、さまざまなアプローチを試みました。これが私の最後のものです:

public function formAction(Request $request)
{
}
{% render 'Bundle:Controller:form' with {'request': app.request} %}

この場合、リクエストをコンテナからフェッチするのではなく、パラメータとして取得する必要があることに注意してください。Symfonyを慣用的に使用している場合は、すでにそれを実行しています。

この問題を解決するためのより良い方法を見つけたら、私はそれを知りたいと思っています。:)

于 2012-10-29T14:37:32.300 に答える