現在、かなり標準的な REST API を使用したサービスがあります。
show: GET /users/1
update: PUT /users/1
...そして、同じ規則に従ういくつかの has_many 関係:
show: GET /users/1/friends/1
update: PUT /users/1/friends/1
ただし、設定を処理するための EAV テーブルもあり (申し訳ありませんが、この部分は変更されません)、has_one 関係として機能するように設定されています。初めの:
user.settings # returns {:sound => true, :tutorials => true}
user.update_settings # expects {:sound => false}
ローカルではうまく機能しますが、他のルートが機能する方法を表す ID はありません。代わりに、ルートは次のように設定できます。
show: GET /users/1/settings
update: PUT /users/1/settings
これはこれを処理する通常の方法ですか、それとも私が知らない他の規則がありますか?