5

Symfony2 でコーディングしているアプリケーションがあります。Account エンティティを作成し、注釈を使用して AccountRepository というリポジトリを作成しました AccountRepository オブジェクト内で、外部ベンダーに出てそのサイトでユーザーを作成し、情報を返すいくつかのビジネス ロジックを実行する関数を作成しましたそのユーザーを私たちの Account Entity に関連付けることができるようにします。そのユーザーの作成には、クレジット カード トークンの送信が含まれます。次に、保存してアカウントに関連付けたい限られたクレジットカードデータを返すため、オブジェクトを作成して適切なデータを挿入した後、エンティティ AccountCard があり、リポジトリからエンティティマネージャーを要求して、AccountCard を永続化することはできません。 $em 変数の print_r には何も表示されませんが、すべてが表示されます。私はこれを行うことができるはずだと言っています。私は何を間違っていますか?

<?php

namespace Openbridge\CommonBundle\Entity\Repository;

use Doctrine\ORM\EntityRepository;

use Openbridge\CommonBundle\Entity\Account as Account;
use Openbridge\CommonBundle\Entity\AccountCard as AccountCard;
use Openbridge\CommonBundle\Entity\AccountAddress as AccountAddress;

/**
 * AccountRepository
 *
 * This class was generated by the Doctrine ORM. Add your own custom
 * repository methods below.
 */
class AccountRepository extends EntityRepository
{
    public function __construct()
    {

    }

    function createVendorUser(Account $account, $userData = array())
    {
        // Request new user from vendor code here. (this works)

        $ac = new AccountCard();
        // setters for $ac data here.

        // Get entity manager
        $em = $this->getEntityManager();
        $em->persist($ac);
        $em->flush();
    }
4

1 に答える 1

6

EntityRepositoryはそれを使用して依存関係をクラスにバインドするため、コンストラクターを削除する必要があります。

于 2013-08-05T22:26:58.517 に答える