多くの電話番号を持つユーザー モデルがあります。電話番号は、データベースで作成された phone_type (オフィス、自宅、携帯電話など) に属します。
phone_type.rb:
class PhoneType < ActiveRecord::Base
# id :integer not null, primary key
# name :string(255)
# position :integer default(1)
default_scope :order => 'position ASC'
default_scope where(:active => true)
ユーザーの電話番号を表示する ActiveRecord クエリを作成しようとしましたが、この順序は phone_type.position によって phone_types に設定された順序によって決定されます。
私の古いコードは次のとおりです。
<% @phones.each do |p| %>
<%= p.phone_type.name %> <%= p.value %> <br/>
<% end %>
ただし、電話番号をテーブル ID 順に表示するだけです。より複雑なクエリを記述する正しい方法は何ですか?