0

多対多の関係を持つ 2 つのテーブルがあります。1 つのテーブルにはプロパティのタイプが保持され、もう 1 つのテーブルには領域が保持されます。

簡単にするために、次のようになるとしましょう。

_property_
id
name
description

_region_
id
name

_property-region_
id
property.id
region.id

新しいプロパティを作成するフォームを作成したいのですが、このフォームに複数選択オプションを含めて、ユーザーがプロパティを利用できる地域を指定できるようにしたいと考えています。

実際にジャンクション テーブルを作成せずに複数選択フォームを作成できることは理解していますlist:referenceが、データベースを非正規化せずにこれを行う方法を学びたいと思っています。

4

1 に答える 1

0

その非正常化ではありませんか?各領域には多くのプロパティを含めることができ、リレーションは領域ごとに保持されます...クエリレベルでは、プロパティのIDを保持する領域を要求するだけです...(ジャンクション/がある場合でも、dbにクエリを実行する必要がありますテーブルを通して)

リレーションに関する特定の情報がある場合は、そのロジックを自分で処理する必要があります。難しいことではありませんが、プロパティ情報を検証する2つのフォームを作成すると、レコードがデータベースに保存されるため、IDを取得できます。次に、その ID をリレーションの一部として追加し、選択したすべてのアイテムをその他として追加します。

于 2012-05-06T19:29:02.743 に答える