Я пытаюсь назначить группу игроков на приспособление через форму.
Я пытался перечислить всех игроков из моей таблицы players с помощью флажков, чтобы пользователь мог выбрать, каких игроков он хочет для приспособления.
Модели Есть 3 модели со светильниками и проигрывателями.
class Fixture < ActiveRecord::Base
belongs_to :team
has_many :player_fixtures
has_many :players, :through => :player_fixtures
has_one :venue
class Player < ActiveRecord::Base
has_and_belongs_to_many :teams
has_many :player_fixtures
has_many :fixtures, :through => :player_fixtures
class PlayerFixture < ActiveRecord::Base
belongs_to :player
belongs_to :fixture
Мне нужно использовать :through
, как при ассоциации игроков и приборов. Мне нужно логическое значение, заплатил ли этот человек.
Эти ассоциации работают, и я могу назначить игрока на прибор в таблице соединений через консоль.
Просмотры На мой взгляд, у меня есть:
<%= form_for(:fixture, :url => {:action =>'create'}) do |f| %>
Это код, который я пытался заставить работать в данный момент!
<%= f.collection_select(:player, :player_id, @players,:id, :name, { :include_blank => true ,:multiple => true}) %>
ИЗМЕНИТЬ
Теперь я вставил комментарий ниже, а также изменил выбор коллекции на:
<%= f.collection_select(:player_ids, Player.all,:id, :name, {:include_blank => true ,:multiple => true}) %>
На данный момент я получаю следующую ошибку при попытке загрузить форму:
undefined method `merge' for :name:Symbol
на этой линии
28: <td><%= f.collection_select(:fixture, :player_id, Player.all,:id, :name, { :include_blank => true ,:multiple => true}) %>
Это, вероятно, ужасно неправильно, однако мне действительно нужно, чтобы это работало, так как это большая часть моего проекта.
Может ли кто-нибудь указать мне в правильном направлении? Если кто-то хочет послать по формастическому маршруту, не стесняйтесь, так как я тоже не могу получить эту работу.