2011-01-11 9 views
2

私はクラスUserとOrderをモデル化する必要があります。私が望むのは、それらの間に関係を持つことです。その結果、ユーザーは多くの注文を受け取ります。この場合、1対多の関係になります。次のように私はUser.cfcで定義される:ColdFusion 9.0.1でマッピングされていないクラスエラーorm

property name="orders" 
     fieldtype="one-to-many" 
     cfc="Order" 
     fkcolumn="userID" 
     type="array"; 

このフロンの各々は問題なくEntityLoad(エンティティ名)を介してロードすることができます。ダンプ出力のすべてのデータが表示されます。

は、しかし、できるだけ早く私は、それが離れて、​​User.cfc内のすべてのブレークを注文関係を置くとして、私は、エラーメッセージを取得:

Association references unmapped class: Order 

がここフロン

ユーザーのためのコードですが。 CFC

component persistent="true" datasource="otherDatasource" 
{ 
    property name="id" fieldtype="id"; 
    property name="userName"; 
    property name="password"; 
    property name="firstName"; 
    property name="lastName"; 
    property name="title"; 
    property name="orders" 
       fieldtype="one-to-many" 
       cfc="Order" 
       fkcolumn="userID" 
       type="array"; 

    function init() 
    { 
     return this; 
    } 
} 

Order.cfc

component persistent="true" 
{ 
    property name="id" fieldtype="id" generator="guid"; 
    property name="quantity"; 
    property name="period"; 
    property name="region"; 
    property name="createdAt" ormtype="date"; 

    function init() 
    { 
     return this; 
    } 
} 

ここで間違っていることは何ですか?

+0

すべてのORM CFCが1つのフォルダにありますか? 'Application.cfc'にORM設定を投稿してください。 –

+0

はい、すべてのモデルのcfcsは同じフォルダにあります。私はそれが私がユーザーモデルで使用する別のデータソースのためだと仮定します。 – noobsaibot

+0

テーブルを同じデータソースに移動し、そのデータソースが修正されるかどうか確認できますか? –

答えて

2

私は私の答えがあるようです。 coldfusion 9.0.1 ormでは、異なるデータベースのテーブル間に関係を構築することはできません。

+0

テーブル間でSQL結合を行うことはできません:)それは私の考えです。 (私が間違っていると言ってください^^私はそれをすることができます^^) – LarZuK

+1

CF ORMは実際にそれを行うことができますが、特定の方法でプロパティを定義する必要があります。 http://cfsimplicity.com/51/orm-related-entities-in-different-databasesを参照してください。 – CfSimplicity

関連する問題