Я пытаюсь выяснить, как правильно удалить связь. Но это легче объяснить с помощью кода:
class ClassRoom < ActiveRecord::Base
class ClassJoin < ActiveRecord::Base
belongs_to :class_room
belongs_to :student
class Student < ActiveRecord::Base
has_many :class_joins
has_many :class_rooms, :through => :class_joins
# show.html.erb
<% @student.class_rooms.each do |class_room| %>
<%= class_room.name %><br/>
<%= link_to "Remove class", student_class_join_path(@student,class_room.something), :method => :delete %>
<% end %>
Как выбрать class_join, если я просто смотрю на ассоциацию has_many: through? Есть ли простой способ выбрать его или мне нужно сделать find_by_class_room_id_and_student_id (или что-то подобное).
Нашел похожий вопрос , но я хочу знать, если это более чистый способ сделать это.