Несколько внешних ключей в соединительной таблице - PullRequest
0 голосов
/ 29 октября 2018

У меня есть 2 модели, которые связаны как

class Taxonomy < ApplicationRecord    
  has_many :user_taxonomies , :dependent => :delete_all
  has_many :users, :through => :user_taxonomies
  has_many :companies, :through => :user_taxonomies
end

class UserTaxonomy < ActiveRecord::Base
  belongs_to :company
  belongs_to :user
  belongs_to :taxonomy
end

Что нужно: при создании таксономий он должен выдавать список users в select (multiple: true). Следует создать запись в таблице UserTaxonomy с company_id (она будет одинаковой для всех пользователей).

Как мне добиться этого с nested_form?

1 Ответ

0 голосов
/ 29 октября 2018

Edit:

Попробуйте использовать несколько опций в select следующим образом:

<%= f.select :users, 
             User.all.collect {|u| [ u.email, u.id ] }, {}, 
             { :multiple => true, :size => 10 }
%>

Обратите внимание на пустой хеш {}, который необходим для его правильной работы. size будет высотой поля выбора, или вы можете использовать CSS для стиля.

Результат должен выглядеть следующим образом:

<select multiple="multiple" size="10">
    <option value="4">user3@domain</option>
    <option value="3">user2@domain</option>
    <option value="2">user1@domain</option>
    <option value="1">user0@domain</option>
</select>
...