У меня есть две модели, группа и пользователь
Пользователь принадлежит_группе и группа имеет_много пользователей
В моих группах/show.html.erb у меня есть форма регистрации пользователя
<h1>Create user</h1>
<%= form_for @user do |f| %>
<%= render 'shared/error_messages', :object => f.object %>
<div class="field">
<%= f.label :name %><br />
<%= f.text_field :name %>
</div>
<div class="field">
<%= f.label :email %><br />
<%= f.text_field :email %>
</div>
<div class="field">
<%= f.label :password %><br />
<%= f.password_field :password %>
</div>
<div class="field">
<%= f.label :password_confirmation, "Confirmation" %><br />
<%= f.password_field :password_confirmation %>
</div>
<div class="actions">
<%= f.submit "Sign up" %>
</div>
<% end %>
Чтобы установить связь между группой и пользователем, у меня есть метод создания в моем контроллере пользователей следующим образом.
def create
@group = Group.find(params[:group][:id])
@user = @group.users.build(params[:user])
if @user.save
flash[:success] = "You have created a new user"
redirect_to group_path
else
@title = "Create user"
render 'new'
end
end
Я также пробовал: @group = Group.find(params[:id])
и
@group = Group.find(параметры[:group_id])
Но я все еще получаю сообщение об ошибке
По сути, я хочу создать новых пользователей в группе/show.html.erb и связать этого пользователя с группой, в которой он был создан. Например, если пользователь создан в группах/3, как мне установить мой метод создания в контроллере Пользователи, чтобы убедиться, что это отношение сохраняется?
В общем, я следил за учебным пособием Hartl Rails по адресу http://ruby.railstutorial.org/chapters/user-microposts#sec:creating_microposts и следуя подходу к формам и методам создания. Однако я не уверен, как получить параметры для групп/3 в методе поиска, например @group = Group.find(?????)
Может кто-нибудь просветить меня, эта проблема беспокоит меня уже несколько дней.
заранее спасибо