Простите, если на этот вопрос уже был получен ответ.
Я искал некоторое время и подозреваю, что задаю неправильный вопрос, поэтому получаю "неправильные" ответы
Iу меня есть проект rails с 3 контроллерами с соответствующими представлениями и моделью
У меня есть для них ресурсные маршруты и я могу выполнять CRUD для каждого из них
- Карты
- Наборы
- JoinCardSets
Схема базы данных для них:
имя таблицы: карты
id
cardName
description
imageUrl
имя таблицы: наборы
id
setName
description
imageUrl
имя таблицы: join_card_sets
id
card_id
set_id
no_of_cards
карты и наборы имеют отношение многие ко многим, поэтому мои модели выглядят следующим образом:
class Card < ApplicationRecord
has_many :join_card_sets
has_many :sets, :through => :join_card_sets
end
class Set < ApplicationRecord
has_many :join_card_sets
has_many :cards, :through => :join_card_sets
end
class JoinCardSet < ApplicationRecord
belongs_to :set
belongs_to :card
end
Когда я перемещаюсьto CardsController # Show
Отображается:
Имя карты,
описание,
И с помощью некоторых рельсов можно использовать наборы, связанные с ним через таблицу соединений
Контроллер:
def show
@mtg_card = Card.find(params[:id])
@current_sets = @mtg_card.mtg_sets
end
«Показать» вид:
<h2><%= @card.name %></h2>
<%= @card.description %><br>
<img src="<%= @card.imageUrl %>" alt="<%= @card.name %>"><br>
<% if @current_sets.present?
@current_sets.each do |t| %>
<%= t.name %>: <%= %>
<% end #end of for each loop current_set |t| %>
<% end #end of if statment %>
Что мне нужноСправка по следующим вопросам:
Когда @current_sets проходит через каждое соединение,
Я бы хотел, чтобы он поднял столбец "no_of_cards" и отобразил его вместе с именем набора карт.
Если это не ясно, или вы знаете, где лежит ответ, пожалуйста, дайте мне знать