問題タブ [doctrine-extensions]
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.
php - Doctrine generate entities コマンドが追加の src/Gedmo ファイルを生成するため、フォルダーを削除するまでコマンドが機能しなくなります
スタンドアロンの noframework アプリケーションでGedmo 拡張機能を備えた Doctrine を使用しています。自動ロードは、composer の composer.json コンテンツを介して行われます。
アプリのコア クラスは /src ディレクトリに配置され、composer ファイルは /vendor に配置されます。Doctrine はファクトリ経由で構成され、そのメイン コードは以下のとおりです。
私のエンティティは:
私のcli-config.phpは正しく設定されています。doctrine cli ツールを実行して、コマンド経由でエンティティのボイラープレート コードを生成します。
「vendor/bin/doctrine」 orm:generate-entities src
それは私に答えます:
処理エンティティ「Gedmo\Translatable\Entity\MappedSuperclass\AbstractPersonal\Translation」</p>
処理エンティティ「Gedmo\Translatable\Entity\MappedSuperclass\AbstractTranslation」</p>
処理エンティティ「Gedmo\Loggable\Entity\MappedSuperclass\AbstractLogEntry」</p>
処理エンティティ「Gedmo\Tree\Entity\MappedSuperclass\AbstractClosure」</p>
処理エンティティ「App\Entity\ProductCategory2」</p>
エンティティは正常に動作していますが、コマンドによって余分なファイルが src フォルダーに追加されます。
前述のコマンドを使用してエンティティをもう一度生成すると、エラーが発生します。
PHP 致命的なエラー: 9 行目の \src\Gedmo\Loggable\Entity\MappedSuperclass\AbstractLogEntry.php のクラス Gedmo\Loggable\Entity\MappedSuperclass\AbstractLogEntry を再宣言できません
それを修正するには、<ROOT>/src/Gedmo
前にディレクトリを削除する必要があります。
この迷惑な余分なファイルが表示されるのを防ぐために、config のバグを見つけるのを手伝ってくれる人はいますか?
助けてくれてありがとう
symfony - Sonata Admin で翻訳可能なフィールドを使用するには?
エンティティの翻訳には「Knp Doctrine2 Behaviors」を使用し、Sonata Admin フォームのエンティティの翻訳には「A2LiX Translation Form」を使用します。すべて正常に動作します。しかし、Admin クラスの「configureDatagridFilters」および「configureListFields」メソッドに何を入れればよいかわかりません。
当然、たとえば、 $datagridMapper->add('title'); 「Post」エンティティの翻訳可能なフィールドであり、PostTranslation クラスにあるため機能しませんが、Admin クラスは Post エンティティ用です。Post エンティティの __call メソッドは役に立ちません。管理クラスでは機能しないようです。
$datagridMapper->add('translations.title'); エラーは発生せず、エンティティの行がありますが、<a> </a>
タグの間には何もありません:
念のため、私の Post、PostTranslation、および PostAdmin クラスは次のとおりです。
doctrine-orm - symfony3、doctrine2、stofDoctrineExtensionsBundle を使用して Gedmo ツリー要素のパスを取得する方法
ツリー構造を管理するために、Symfony v3.0.4、Doctrine v2.5.4、および StofDoctrineExtensionsBundle [1] を使用しています。
ツリー構造をセットアップするには、Symfony.com [2] のドキュメントを使用し、続いて GitHub [3] のドキュメントを使用しました。
次に、ツリーのセットアップに進みました。例 [4] のツリー エンティティを使用し、[5] のコードを使用してツリーを作成しました。
[6] と [7] は必要ないように思われるので使用しませんでした (ツリーが動作し、それがなくても表示されることがわかる限り)。更新を参照してください。
これまでのところ、データベースにツリー構造があり、それを表示するために例 [8] を変更しました。このような:
次のように1行を変更すると:
ツリーの各要素へのパスを取得するために、エラーが発生します:
- [1] GitHub の stofDoctrineExtensionsBundle ;
- [2] Symfony.com の stofDoctrineExtensinsBundnle ドキュメント;
- [3] GitHub の Gedmo ツリーのドキュメント。
- [4] Gedmo ツリー > ツリー エンティティの例;
- [5] Gedmo ツリー > 基本的な使用例;
- [6]使用しませんでした: Gedmo Tree > Tree Repositories ;
- [7] Gedmo ツリー > 抽象リポジトリを使用します。
- [8]ツリー html 出力例;
- [9] NestedTreeRepository にはメソッド getPath() があります。
[9] で見られるように、NestedTreeRepositry にはメソッド getPath() があります。
更新: [6] を試しましたが、設定できませんでした。それから [7] セットアップを試みましたが、それでもエラーは同じままです!
お知らせ下さい。お時間と知識をありがとうございました。
doctrine - DoctrineExtensions Blameable がすべての created_by ユーザーを熱心にフェッチするのはなぜですか
ユーザークラスで次の特性を使用する場合
ユーザーにクエリを実行するたびに、createdBy ユーザーもフェッチされ、これが再帰的に続きます..
したがって、B によって作成されたユーザー C の場合、A によって作成されたユーザーが照会されます。3 人のユーザーすべてが取得されます...
参照されたユーザーを常に取得することを無効にする方法はありますか?