0

この場合、問題についてより具体的に説明させてください

Peoples テーブル (顧客とサプライヤーを含む) があり、users テーブル (ログインできるユーザー用) があります。

現在、私はこのDB構造を持っています

顧客 -> 組織 -> rel_customer_addresses を介してアドレス テーブルにリンクされています。(1 人の顧客が delivery_address、請求先住所などを持つことができるため)

ユーザー -> テナント -> rel_users_addresses を介してアドレス テーブルにリンクされます (1 人のユーザーが delivery_address、請求先住所などを持つことができるため)

これで、invoice テーブルの customer_key を取得できました。問題は、ユーザー自身が顧客であり、請求書が顧客の 1 人からのものである場合です。顧客ではなくユーザーを検索するように Web アプリに指示するにはどうすればよいですか?

4

1 に答える 1

0

2 つの別個のエンティティ (顧客とユーザー) を見ているので、先に進んで 2 つの別個のテーブルを使用し、それらに一意の識別子 (ユーザー名、SID) を共有させます。

こうすることで、適切な権限がなければ、一方が他方から情報を見る可能性がなくなります。

これを制御する方法はいくつかありますが、ロジックは次のようになります。

If userID exists in table user, do this.
If userID exists in table customer, do this.
If userID exists in table user AND table customer, do this.

そうすれば、状況を個別に、または一緒に完全に制御できます。userIDつまり、 tableにある特別なアクセス許可を付与customerするか、完全に分離することができます (Facebook がページとページが登録されているアカウントに対して個別の「ID」を作成する方法と同様)。

それが役立つことを願っています!

于 2013-03-23T12:37:47.757 に答える