Создаем 3 модели и связываемых их:
class City < ActiveRecord::Base
has_many :users
end
class User < ActiveRecord::Base
has_many :posts
belongs_to :city
end
class Post < ActiveRecord::Base
belongs_to :user
end
Далее нам, например, понадобилось при выводе всех постов (экшен index контроллера PostsController) выводить еще и город автора поста. Тогда во вьюхе post index.html.erb вывод города - post.user.city.name. Пример реализации:
<table>
<thead>
<tr>
<th>User</th>
<th>City</th>
<th>Text</th>
<th></th>
<th></th>
<th></th>
</tr>
</thead>
<tbody>
<% @posts.each do |post| %>
<tr>
<td><%= link_to post.user.name, user_path(post.user) %></td>
<td><%= post.user.city.name %></td>
<td><%= post.text %></td>
<td><%= link_to 'Show', post %></td>
<td><%= link_to 'Edit', edit_post_path(post) %></td>
<td><%= link_to 'Destroy', post, method: :delete, data: { confirm: 'Are you sure?' } %></td>
</tr>
<% end %>
</tbody>
</table>
Сам изучаю Рельсы. Может можно и более изящно все сделать. Но проверил - работает.