私には何かがありません。 私はyml
ファイルを介して検証されたUserエンティティを持っていますが、ルートへの投稿要求を送信するたびにリクエストを受け取っていないようです。これで私はルートが正常に動作することを意味しますが、パスワードとユーザ名が空白にならないようにエラーメッセージが表示され続けます(制約が設定されているためです)。だから、それは私の要求がエンティティに対して検証されていないようです。symfonyのバリデーションがうまくいかない
私は、この設定を持っていることを確認しましたが、私の設定でトリガー: validation: { enabled: true, enable_annotations: true }
ここに私のrouting.yml
です:
user_login_homepage:
path: /check
defaults: { _controller: UserLoginBundle:Login:checkCredentials }
methods: [POST]
ここにここに私のvalidation.yml
User\UserBundle\Entity\User:
properties:
username:
- NotBlank: ~
password:
- NotBlank: ~
は(私のコントローラですLoginController.php
)
public function checkCredentialsAction(Request $request)
{
$recursiveValidator = $this->get('validator');
$user = new User();
$errors = $recursiveValidator->validate($user);
if (count($errors) > 0) {
$errorsString = (string) $errors;
return new Response($errorsString);
}
return new Response('Yuppy');
}
私はちょうど指示に従おうとしましたが、私はそれを動作させることができません:( 私は何かが不足していますか?それは誤り正しいですので、あなたが空のユーザを作成している
うんどうもありがとう。はい、POSTによって渡されています。あなたのソリューションに関連する単なる質問です。そのようなデータをテーブルに保存しないのですか? –
このようにしてエンティティを埋め、エラーをチェックし、保存した後にsymfonyフォームを使用している場合は、フォームによって渡されたフォームをユーザに自動的に記入することができます –
そうですが、ケースは私がフォームを使用していないという事実にありますので、少し違っていました! 乾杯! :) –