2

Doctrine_Core :: set()を呼び出すことができませんでした。1対多の参照を設定する場合、2番目の引数はDoctrine_Collectionのインスタンスである必要があります。

これは、フィクスチャの「アップロード」テーブルに「アセット」のデータを含めると発生します。

以下のschema.ymlの一部を参照してください。

    
detect_relations:true
オプション:
  照合:utf8_general_ci
  文字セット:utf8
  タイプ:InnoDB

資産:
  actAs:{タイムスタンプ可能:〜}
  列:
    Asset_id:
      タイプ:整数
      プライマリ:true
      notnull:true
      自動インクリメント:true
    Asset_type_id:
      タイプ:整数
      notnull:true
    ユーザーID:
      タイプ:integer(4)
      notnull:true
    名前:
      タイプ:string(45)


アップロード:
  actAs:{タイムスタンプ可能:〜}
  列:
    upload_id:
      タイプ:整数
      プライマリ:true
      notnull:true
      自動インクリメント:true
    Asset_id:
      タイプ:整数
      notnull:true
  関係:
    資産:
      クラス:アセット
      ローカル:asset_id
      外国語:asset_id
      ForeignAlias:アセット
      タイプ:多く
      外国のタイプ:1

フィクスチャの一部は次のとおりです。

資産:
  sp_asset1:
    AssetType:スペイン
    sfGuardUser:User_1
    名前:素晴らしいスペインの歌
    カテゴリ:Category_3
    説明:最高のスペインのもの
    プレビュー:http://www.google.com/sample.mp3
  sp_asset2:
    AssetType:英国
    sfGuardUser:User_1
    名前:最高の山のスコック
    カテゴリ:Category_3
    説明:イギリス人の素晴らしい例

##問題は以下で発生します##
アップロード:
  Upload_1:
    アセット:sp_asset1
  Upload_2:
    アセット:sp_asset2

これは、フィクスチャの「アップロード」テーブルに「アセット」のデータを含めると発生します。「Doctrine_Core :: set()、2番目の引数を呼び出せませんでした...」という問題について誰かが考えていますか?

4

2 に答える 2

2

試す:

Upload:
  Upload_1:
    asset: [sp_asset1]
  Upload_2:
    asset: [sp_asset2]
于 2010-07-20T20:33:00.830 に答える
0

名前の大/小文字を確認してください。リレーションは名前が付けられ、フィクスチャで"Asset"使用されます。"asset"私も同様の問題を抱えていましたが、それは文字の大文字と小文字の問題でした。

于 2012-12-06T09:43:43.027 に答える