0

私はSymfony2とFOSUserBundleを使用しています。

すでにデータベースにある登録フォームにユーザー名またはメールアドレスを入力すると、登録フォームの上部にエラーが表示されます。

ユーザー名/メールフィールドにエラーメッセージを表示するにはどうすればよいですか?

4

2 に答える 2

0

FOSUserBundle をバンドルの親として設定した場合:

// src/Acme/UserBundle/AcmeUserBundle.php

<?php

namespace Acme\UserBundle;

use Symfony\Component\HttpKernel\Bundle\Bundle;

class AcmeUserBundle extends Bundle
{
    public function getParent()
    {
        return 'FOSUserBundle';
    }
}

次に、独自の validation.yml ファイルを config フォルダーに配置し、一意の制約の errorPath プロパティを次のように設定できます。

#validation.yml:
Acme\DemoBundle\Entity\User:      # your user entity
constraints:
    - Symfony\Bridge\Doctrine\Validator\Constraints\UniqueEntity: { fields: usernameCanonical, errorPath: username, groups: [CustomRegistration, Default] }

フォームの実際のフィールド名として errorPath を設定してください。

于 2013-01-25T14:22:37.187 に答える
0

ドキュメントを読む 各フィールドを手作業でレンダリングする

{{form_errors(form.username)}}
{{form_errors(form.)}}

または、フォームのテーマを作成する Global Form Theming

于 2012-02-08T20:46:40.887 に答える