* Примечание для просмотра всего кода, перейдите по ссылкеВозможно ли взаимодействие с таблицей соединений с действием формы?
Я создаю новые «учетные записи». Каждая новая учетная запись has_many: пользователи. Пользователи have_and_belong_to_many роли. Я пытаюсь назначить ОСНОВНЫЕ роли новым пользователям в новой форме учетной записи. Как правило, простой процесс ...
Связь has_and_belong_to_many между пользователями и Ролями подразумевает, что пользователи и роли связаны таблицей соединений. У меня нет модели для работы. Поэтому я не уверен, как это сделать. Я могу создавать новые роли, используя методы, описанные в here (в ответе), но я не знаю, как назначить существующие роли новым пользователям через модель учетной записи.
СКП эквивалент было бы что-то вроде этого: SQL (0.1ms) INSERT INTO "roles_users" ("role_id", "user_id") VALUES (6, 29)
Где мне нужно 29 функционировать как идентификатор нового пользователя, созданного в рельсах т.е. Воулс (6, ID)
Текущий код: (создает новую роль)
<% f.fields_for :users do |builder| %>
<%= render 'user_fields', :f => builder %>
<p>Login : <%= f.text_field :login %>
<p>Email : <%= f.text_field :email %>
<p>Password : <%= f.password_field :password %>
<p>Confirm Password : <%= f.password_field :password_confirmation %>
<%= f.hidden_field :account_id, :value => :id %>
<% f.fields_for :roles do |builder| %>
<%= builder.hidden_field :name, :value => 'test' %>
<% end %>
Account.rb
has_many :users
accepts_nested_attributes_for :users
User.rb
has_and_belongs_to_many :roles
accepts_nested_attributes_for :roles
accounts_controller.rb
def new
@account = Account.new
#builds user and roles in memory
1.times do
user = @account.users.build
1.times { user.roles.build }
end
Могу ли я отправить вам подарочную карту starbucks? Я работаю над этой проблемой весь день. Спасибо! –