Form_for发现查找当前路由以传递到关联

时间:2011-09-13 07:04:03

标签: ruby-on-rails ruby-on-rails-3 model-view-controller routing

我有一张表格:

<%= form_for(@message) do |f| %>

位于我的群组中#show page。我想要做的是与当前用户,消息ID和当前组建立关联。我已经在我的MessagesController中使用以下代码将前两个很好地钉了好但是我知道在更改了参数之后我正试图找到我的@group_id:

def create
  @message = Message.new(:message => params[:message],
  :source => "web")

  respond_to do |format|
    if @message.save
      current_user.envelopes.create!(:user_id => current_user.id, :group_id => @group_id, :message_id => @message.id)
      format.html { redirect_to(group_path(@group_id), :notice => 'Message was sent.') }
    else
      format.html { render :action => "new" }
    end
  end
end

我想知道的是我应该在哪里捕获@group_id,以便在发送消息时创建信封关联,并将用户重定向回组页面,它们只是一个(现在有新消息)

非常感谢!

1 个答案:

答案 0 :(得分:1)

如果我已正确理解您的问题,您可以将群组ID作为隐藏字段添加到表单中:

<%= f.hidden_field :group_id, :value => @group %>