0

この質問は以前にも投稿しましたが、まだ解決されていないため、再度投稿します。

私は自分のアプリケーションに Symfony2 を使用しており、2 つのデータベース接続、つまり読み取りと書き込みを作成する必要があります。検索すると、さまざまなエンティティ マネージャーを作成できることが簡単にわかり、そのように作成しました。

コントローラーでオブジェクトを作る

$emWrite = $this->getDoctrine()->getEntityManager('write');
$em = $this->getDoctrine()->getEntityManager();

エンティティを永続化すると、次のエラーが表示されます。

A new entity was found through the relationship '
AppBundle\Entity\Follower#user' that was not configured to cascade persist
operations for entity: adeel. Explicitly persist the new entity or configure
cascading persist operations on the relationship. If you cannot find out which
entity causes the problem implement AppBundle\Entity\User#__toString()
to get a clue. (500 Internal Server Error)

関連するエンティティの両側に永続プロパティを与えるなど、すでに多くのことを試しました。

4

1 に答える 1

0

あなたの問題は、複数のエンティティマネージャーに関連していませんが、関係の目的のために、クラスに設定していないオプションに関連しています。

あなたのエンティティについてはあまり詳しくありませんが、そのように関係を変更することをお勧めします

<?php
class User
{
    //...
    /**
     * Bidirectional - One-To-Many (INVERSE SIDE)
     *
     * @OneToMany(targetEntity="Comment", mappedBy="author", 
                  cascade={"persist","remove"})
     */
    private $commentsAuthored;
    //...
}

cascade={"persist","remove"}あなたが探しているものはどこにありますか。

于 2012-09-14T13:52:34.537 に答える