架空のレンタカー アプリケーションがあるとします。
ユーザー、車、住所があります。
user (id, name, email)
has_many :addresses
has_many :cars
car (id, name)
belongs_to :user
address (id, name, user_id)
belongs_to :user
各ユーザーは、複数の住所と車を持っています。住所は、ユーザーが自分の車を貸すことができる場所です。
さて、このモデルでは、次のことを行いたいと思います (ユーザー #1 が 2 つの住所と 3 台の車を持っているとします)。
Settings for User #1 :
(specify at which address each of your cars are available)
/-------------------------------------------\
| | Car #1 | Car #2 | Car #3 |
|-----------+----------+---------+----------|
| Address 1 | yes | yes | no |
|-----------+----------+---------+----------|
| Address 2 | no | no | yes |
\-------------------------------------------/
テーブルを作成できると思いますcars_addresses
(id, car_id, address_id, available:bool)
しかし、アクティブレコードでそれを指定する方法がわかりません。だから私の質問は:
- これは正しいスキーマ構造ですか?
- アクティブなレコードを介してそれを実装するにはどうすればよいですか?