2

私のカスタム登録フォームはバージョン1.2。*でうまく機能していましたが、2.1でsymfonyを更新し、2.0。*でFOSUserBundleを更新すると、解決方法がわからないというこの問題が発生します。

エラー :

サービス「kairos_user.registration_form_type」に指定されたタイプ名が実際の名前と一致しません。「fos_user_registration」を指定すると、「kairos_user_registration」が期待されます

私のサービス定義:

services:
    kairos_user.registration_form_type:
        class: Kairos\UserBundle\Form\Type\RegistrationFormType
        arguments: [%fos_user.model.user.class%]
        tags:
            - { name: form.type, alias: kairos_user_registration }

そして私のconfig.yml

fos_user:
    db_driver: orm #cf kairos doctrine admin
    firewall_name: main
    user_class: Kairos\UserBundle\Entity\User
    registration:
        form:
            type: kairos_user_registration
4

1 に答える 1

3

登録フォームサービスのエイリアスは、登録フォームタイプクラスによって返される名前と一致する必要があります。getName ()メソッドKairos\UserBundle\Form\Type\RegistrationFormTypeの戻り値を変更してみてください

class RegistrationFormType extends AbstractType
{
    // ...
    public function getName()
    {
        return 'kairos_user_registration';
    }
}
于 2012-09-05T10:31:42.037 に答える