[前][次][番号順一覧][スレッド一覧]

rails:1403

From: insight@e...
Date: Tue, 25 Jul 2006 14:57:23 +0900
Subject: [rails:1403] 同一テーブルを参照する2つの外部キーの設定

こんにちは。ものすごく基本的な事なのかもしれませんが、教えて下さ
い。

とあるいくつかの支店を持つ店があり、店内販売の顧客と、通信販売の
顧客を抱えているとして、それらを表現するために2つのテーブルを扱
っています。
1つは顧客を表すテーブルで、それぞれid、name属性をもってます。こ
れは、店内販売の顧客、通信販売の顧客も同じ顧客としてまとめていま
す。本来は店内顧客テーブル、通信販売顧客テーブルと分けてしまうの
が一番簡単なのですが・・・それが難しく。
もう1つはお店そのものを表すテーブルで、店内販売用の顧客ID、通信
販売用の顧客IDを同一の「顧客テーブル」への外部キーとして持ってい
ます。

「根本的にテーブルの設計が間違ってる!」ていうのはさておいて(ご
めんなさい)これをrailsに教えるには、どのようにmodelに表記すれば
いいのでしょうか?


使用する際は、ある一つの支店IDが定まったら、店内顧客リスト一覧、
通信販売顧客一覧と2つ表示したいのです。
今のところは、find_by_sqlを使って直接sqlを書いているのですが、一
つのテーブルを参照するキーが一つの時のように、もう少しスマートに
(店舗.find(1).顧客sみたいな感じで)書く方法はないでしょうか?

:belongs_to :kokyaku, :foreign_key=>:tenpo_kokyaku_id
:belongs_to :kokyaku, :foreign_key=>:tuushin_kokyaku_id

も違うしですね。

どうかよろしくお願いします。


--
ML: rails@r...
使い方: http://QuickML.com/

[前][次][番号順一覧][スレッド一覧]