2017-09-28 6 views
0

FosUserBundleの登録を選択的に無効にする方法はありますか? FosUserbundleの登録を無効にして有効にする方法を知りたい私は、情報を探していたし、私はこの記事を見つけました:https://codereviewvideos.com/course/getting-started-with-fosuserbundle/video/how-to-disable-registation-in-fosuserbundleFosUserbundleの登録を選択的に無効にする方法は?

私はそこから重要な情報を抽出します:

It may be that you wish to enabled and disable registration selectively. 

In this instance, and for the improvement of site administrator user experience, we can use a simple parameter value to allow the site registration to be toggled between and enabled and disabled state. 

To achieve this, all we need to do is add in a new parameter in to parameters.yml: 

# app/config/parameters.yml 
parameters: 
    registration_enabled: true 

私はその情報を試してみましたが、それはうまくいきませんでしたし、私ならば、私は知りません何かを忘れている。また、登録コントローラーに触れるかイベントリスナーを設定するなどの他の解決策があることも知っていますが、もっと洗練されたソリューションを使用することが可能な場合は(上記のパラメータの変更のように、私はむしろそれを望みます)

答えて

0

de FosUserBundleController登録関数を呼び出し、登録された(データベース)変数に応じて登録フォームを表示するかどうかを示します。

More info, here

+0

はい、コメントしましたそれは問題ではあるが、可能ならば。私はよりクリーンな方法でそれを行うことを好む –

+0

事はその旗をどこで評価するのですか? FosUserBundleはベンダーであり、読み取り専用でなければならないため、FosUserBundle内では実行できません。コードのどこかでそれを行う必要があるため、FosUserBundleコードの一部を拡張または上書きする必要があります。フルコントローラーをオーバーライドしたくない場合は、フラグに応じて登録フォームを表示するかどうかを示すカスタム登録コントローラーを作成できます。あなたはさらに多くのオプションがありますhttps://stackoverflow.com/questions/31106271/how-to-definitely-disable-registration-in-fosuserbundle – Carlos

1

あなたは

fos_user: 
    resource: "@FOSUserBundle/Resources/config/routing/all.xml" 

によってすべてのルートをインポートする場合、それはルート だ含めないで登録を無効にすることができ一つずつそれらをインポート:

含めず Import FOSUserBundle routing files

を見て

fos_user_register: 
    resource: "@FOSUserBundle/Resources/config/routing/registration.xml" 
    prefix: /register 
+0

私もその方法を知っていましたが、同じものを得るためにフラグを設定することはできませんか? –

+0

@KevinGravellもっと詳しく説明してください –

+0

その旗はどこで評価されますか? FosUserBundleはベンダーであり、読み取り専用でなければならないため、FosUserBundle内では実行できません。 – Carlos

関連する問題