1対多の関係を作成する
データをモデル化する際、複数エンティティ間で1対多の関係の作成が必要になる場合があります。例として、Order(親エンティティ)が多数のItems(子エンティティ)を持つことが挙げられます。これは多くの場合、親レコードの識別子を外部キーとして子レコードに設定することで実装されます。
OutSystemsで2つのエンティティ間で1対多の関係を作成するには、以下の手順を実行します。
- 子レコード(
Item
など)を持つエンティティを選択します。 - 親エンティティの識別子(
Order
エンティティの識別子など)を持つ新しいアトリビュートを追加します。このアトリビュートが外部キーになります。
OutSystemsでは、別のエンティティを指す識別子アトリビュートを持つと自動的に関係が作成されます。同一のエンティティ図に複数のエンティティがある場合、その間の関係を確認できます。
例
ユーザーがレストランやバーのような場所のレビューを作成できるGoOutWebというアプリケーションがあります。特定の場所レコードについて何らかのレビューが作成されたという事実を保存します。
そのためには、以下の手順を実行します。
-
[Data]タブに移動します。
-
Review
エンティティにアトリビュートを追加します。PlaceId
という名前を付けます。OutSystemsは、自動的にそのデータ型がPlace Identifier
であると推測します。2つのエンティティ間の関係も作成します。 -
Review
レコードを作成するアクションで、PlaceId
アトリビュートが、そのReview
の作成対象になっている既存のPlace
レコードの識別子を持っていることを確認します。 -
アプリケーションをパブリッシュします。
その結果、Place
エンティティとReview
エンティティとの間に1対多の関係が作成されます。