2016-08-05 21 views
1

多対多関連の属性をモデル化するための標準的な方法はCUBAにありますか?ドキュメンテーションはトピックを省略しているので、そうではないと思います。この場合、これはロードマップにありますか?CUBA:多対多関連の属性

+0

ここにいるので、すでに試したこと、うまくいかなかったこと、どこで問題があったのか説明できますか? –

+0

私の意見では、関係は属性を意味するものではありません。アトリビュートが必要な場合は、リンクエンティティを作成します(すでに行っていることでしょう)。 – knstvk

+0

リンクエンティティは実際には解決策ですが、もう1つ実装しました。回答を参照してください – Mike

答えて

2

多対多の関連付け(たとえば、プロダクトとプロバイダ間)の場合、CUBAスタジオはリンクテーブル(プロバイダIDとプロダクトIDを保持)を自動的に生成します。

このアソシエーション(たとえばBoolean preferredProvider)に特定の属性を処理するには、preferredProvider列をリンクテーブルに追加し、2つのIDと属性を保持するクラスを作成する必要があります。

これは、多対多の関連付けを取得するplatfomのメカニズムにもおそらく影響します。

私はCUBA Studioが2.2.3のようにそれを管理していないことを合理的に確信しています - スタジオのGUIではオプションなし、ドキュメントには何もありません。もちろん、手動でコードを記述することは可能ですが、手動でJPQLを記述する必要があります。必ずしも大きな問題ではありませんが、ここではプラットフォームの強力な機能を1つの分野だけで失っています。

私は、ProductからProviderへの1対1の関連付けとしてpreferredProviderフィールドを作成しました。追加の関連付けを犠牲にして有効な回避策です。

+0

これは質問に対する回答ではありません。批評をしたり、著者の説明を求めるには、投稿の下にコメントを残してください。 - [レビューの投稿](レビュー/低品質の投稿/ 13364237) –

+0

は、質問を編集して自分自身の質問に回答しました。実際の回答を明確にするために回答しました – Mike

+0

ああ、その場合、解答を受け入れることでそれを終わらせて、すべての人に実用的な解決策が何であるかを示す必要があります。 –

関連する問題