3

提出した後もパラメータを保持したい。

私のRails 3.2.0アプリケーションでは、次のようなものがあります:

http://0.0.0.0:3000/journals?class_code=11v&subject_name=Math

そして、私はフォームを持っています:

<%= form_for @lesson, :html => {:class => "form-horizontal"} do |f| %>
  <%= field_set_tag do %>
    ....
    <%= f.submit "Create", :class => "btn btn-large btn-success" %>
  <% end %>
<% end %>

class_codeparams ( and subject_name) afterを保持したいf.submit。どうやってやるの?

4

2 に答える 2

5

すべてのパラメータを 1 つのフィールドに格納するには、次を使用できます。

<%= hidden_field_tag :parameters, request.query_string  %>

そして、次を使用して、コントローラーでそれらにアクセスできます。

parameters = parse_nested_query(params[:parameters])
于 2012-05-13T09:20:27.643 に答える
5

隠しフィールド

  ....
  <%= hidden_field_tag :class_code, params[:class_code] %>
  <%= hidden_field_tag :subject_name, params[:subject_code] %>
  <%= f.submit "Create", :class => "btn btn-large btn-success" %>
<% end %>

ただし、それらがモデルの属性である場合は、コントローラーの新しいアクションでそれらを割り当てます

def new
  @lesson = Lesson.new(:class_code => params[:class_code], :subject_code => params[:subject_code])
end

# in this case the view code is slightly different
<%= f.hidden_field :class_code %>
<%= f.hidden_field :subject_code %>
于 2012-05-12T16:18:19.833 に答える