問題タブ [sonata-user-bundle]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
symfony - Sonata ユーザーバンドルに別のユーザーマネージャーをユーザーインジェクトする方法
sonata admin bundle と sonata bundle を使用しようとしています。ApplicationSontaUserBundle を作成しました。fosUserInterface を使用すると、すべて正常に動作します。しかし、たとえば Sso という名前の別のユーザー バンドルがあります。したがって、私のアプリでは、FosUserManager の代わりに Sso userManger を使用する必要があります。Sonata ユーザー バンドルには「admin_orm.xml」が含まれており、このサービス構成ファイルには、ファイルに次の行があります:(sonata ユーザー バンドル内)
Application/Sonata/UserBundle/Resources/config/admin_orm.xml には、次のものがあります。
Application/Sonata/Admin/Model/UserAdmin.php で別の userAdmin を定義したため
元の FosUserInterface の代わりに。しかし、それは私の設定を取り込まない
ユーザーマネージャーが FosUserInterface オブジェクトであり、独自のユーザーマネージャーが必要であると常に不平を言っています。私が変更した場合
/vendor/sonata-project/user-bundle/Sonata/UserBundle/Resources/config/admin_orm.xml
独自のユーザーマネージャーを設定すると、すべて正常に動作します。誰でもこのファイルを上書きする方法を教えてもらえますか?
php - Symfony 2.3: 異なるブラウザーと異なる Firefox プロファイル (1 つを除く) での «Bad credentials»
Iceweasel(Debian LinuxのFirefox)と「Entertainment」(およびGoogle Chromeも)と呼ばれる別のプロファイル(「デバッグ」と呼ばれる)でデバッグを行っていましたが、驚いたことに、これらのいずれにもログインできません。しかし、私はまだ通常のプロファイル(「開発」と呼ばれる)でできます。
管理者ユーザーをアクティブ化しようとしましたが、成功しませんでした。これは開発環境でも本番環境でも同じで、Symfony または Apache のログにエラー メッセージはありません。
Symfony 2.3.9 SonataUserBundle 2.2.3 FOSUserBundle 1.3.3
php - ManyToMany フィールドを使用して SonataAdmin ユーザーを拡張する
現在、SonataUserBundle の User を拡張して、既存のエンティティとの新しい ManyToMany 関係を追加しようとしています。
ここにある回答に基づいてユーザーを拡張しました - Sonata User Bundle の拡張と新しいフィールドの追加
ユーザー.php
Pledge.php
スキーマを同期して最初に気付いたのは、ピボット テーブルが 1 つではなく 2 つ作成されていることpledge_user
ですuser_pledge
。を追加しようとしました@ORM\JoinTable
が、それは 1 つの名前を変更するだけです。両方に同じものを追加すると@ORM\JoinTable
、「テーブルが既に存在します」というエラーが表示されます。
admin でユーザー リストにアクセスしようとすると、大きな SQL エラーが発生します。
これは単純なことだと確信していますが、この問題の原因を見つけようと頭を悩ませています。私は何を取りこぼしたか?
完全な User.php: http://pastebin.com/TXunsgm1
完全な Pledge.php: http://pastebin.com/Mta6aiVm
symfony - FOSUserBundle のインストール中の問題
公式ドキュメントに記載されているすべてのタスクを実行した後、このエラーが発生します: Sonata userBundle インストールガイド
Bundle "SonataUserBundle" extends bundle "FOSUserBundle", which is not registered.
SonataUserBundle (FOS を含む) を正常にインストールし、config と appkernel を更新しました。
PS: 既に AdminBundle がインストールされています UPDATE1: 追加しましたnew FOS\UserBundle\FOSUserBundle()
& このエラーが発生しました InvalidArgumentException: Bundle "ApplicationSonataUserBundle" does not exist or it is not enabled.
symfony - symfony プロジェクト; SonataUser、FOSUser およびそれらの registration_content.html.twig
解決済み-- エントリの下部を参照
FOSUserBundle を拡張する SonataUserBundle に慣れようとしています。
インストールは (私の知る限り) うまくいきました。ログインと登録フォームをカスタマイズしたいと思います。app/Resources のテンプレートを上書きしたところ、うまくいきました。ただし、登録フォームについては、なぜ機能するのかわかりません...
これが私の問題です:
SonataUserBundle 登録コントローラー (RegistrationFOSUser1) は、フォームをセットアップし、テンプレートとして FOSUserBundle:Registration:register.html.twig を使用してレンダリングします。
register.html.twig には FOSUserBundle:Registration:register_content.html.twig が含まれています。
register_content.html.twig には、フォームをレンダリングする小枝コードが含まれています。
ただし、実際にレンダリングされるのは SonataUserBundle:Registration:register_content.html.twig です
ここで、SonataUserBundle が FOSUserBundle をどこで、いつ、どのように置き換えるのかわかりません...
ヒントをありがとう!
わかりました、私の質問に対する解決策が symfony のクックブックに十分に文書化されていることがわかりました: http://symfony.com/doc/current/cookbook/bundles/inheritance.html
私と同じように symfony を初めて使用する人のために:
別のバンドル 'ChildBundle' の親 'ParentBundle' を定義すると、ParentBundle から関数、テンプレートなどが呼び出されるたびに、symfony は最初に ChildBundle に同じ名前のファイルがあるかどうかを調べます。
親バンドルは ChildBundle.php で定義されています。
親バンドルのファイルが通常の ParentBundle:path:file 表記で呼び出される限り、これは機能します。
php - Symfony2 - オーバーロード登録フォームが CSRF エラーを引き起こす (github リポジトリを追加)
現在、SonataUser 登録フォームをオーバーロードしているため、ユーザーがアカウントを作成するときに独自のカスタム フォームを作成できます。
すべてを適切にオーバーロードしました (ハンドラー、フォーム タイプ、コントローラー、小枝テンプレート)。ただし、フォームを送信すると、データが返されるだけで、新しいユーザーは作成されません。そのため、調べてみると、これをエコーしたときにわかりました
CSRF トークンが無効であるというエラーが表示されました。と を使用Symfony 2.4.2
してsonata user 2.2.x-dev
います。
オーバーロードしたすべてのクラスを紹介します。今のところ、それらは主に親からコピー アンド ペーストされています。
ここに私のフォームハンドラーがあります
ここに私のフォームタイプがあります:
これが私の登録コントローラーです
ここに私のサービスがあります:
これが私のソナタユーザー構成です(app/config/config.yml)
私の小枝のレンダリング:
エラーが発生する理由が本当にわかりません:
私は自分のページ{{form_rest(form)}}
にあり、トークンフィールドが存在するため...
更新自分で問題を確認できるように、構成をプルできるように github リポジトリを作成しました。https://github.com/ima-tech/testSonataUser
symfony - Symfony2 - ブロック型 sonata.user.block.menu が存在しません
私には1つの例外があります:
私は FOSUserBundle + SonataAdminBundle をインストールしました。どのように理解しているか、SonataBlockBundle とその他の必要なバンドルをインストールする必要があります。
私のカーネルファイル:
私のcomposer.jsonを追加
すべてのバンドルがインストールされています。だから私はなぜこのエラーが発生したのか分かりません
アプリ/設定/config.yml
symfony - SonataUserBundle テンプレートをオーバーライドする方法
SonataAdminBundle と SonataUserBundle をインストールしましたが、いくつかの小枝テンプレートをオーバーライドしようとしています。user_block.html.twig を除くすべてで成功しました
これは私のプロジェクト ../app/Resources/ ディレクトリ構造です:
また、SonataAdminBundle または SonataUserBundle ディレクトリの下に配置しようとしましたが、何も機能しませんでした。
user_block テンプレートをオーバーライドするにはどうすればよいですか?
ありがとう