ruby-on-rails - 通过 form_for 中的 text_field_tag 传递额外参数

标签 ruby-on-rails

我在 Rails 3 上制作的表单遇到了麻烦。

我想做的是:

我想传递一个额外的参数只是为了决定你想要执行多少次构建 到下一个表格。我试图通过 text_field_tag 传递值,但我无法获取它 在 Controller 侧。

这就是我所做的:

型号:

  class Story < ActiveRecord::Base
    attr_accessible :resume,
                 :title,
                 :prelude,
                 :chapter_numbers

    attr_accessor :chapter_numbers
    # etc etc etc

  end

查看:

<%= simple_form_for(@story) do |f| %>

    <div class="field">
      <%= f.input :prelude, as: :text, input_html: { rows: 10, style: 'width: 100%' } %>
    </div>
    <div class="field">
      <%= text_field_tag :chapter_numbers %>
    </div>
<% end %>

额外的参数是:chapter_numbers,我想在 Controller 中捕获它 params[:chapter_numbers],但它不起作用。尝试将其添加为虚拟属性(不知道是否有必要)

提前致谢!

最佳答案

text_field_tag 是一个独立的字段,不会在您的参数中发送


text_field_tagtext_field 不同

您需要使用 f.text_field 因为这会将所需的参数发送到您的 Controller ,如下所示:

<%= f.text_field :chapter_numbers %>

或者根据您的情况(使用简单形式):

<%= f.input :chapter_numbers, as: :text  %>

Good resource here about this

关于ruby-on-rails - 通过 form_for 中的 text_field_tag 传递额外参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20740319/

相关文章:

ruby-on-rails - Mongoid 更新查询将其他属性设置为 nil?

mysql - 比较日期并在 MySQL 中创建缺失的记录

ruby-on-rails - Redis 和 SSE Rails 4

ruby-on-rails - 一个 Rails 应用程序可以使用多个 Redis 实例吗?

ruby-on-rails - 即使我在 Rails 中定义了方法,我也无法调用它

ruby-on-rails - 设计 - openid + ldap

ruby-on-rails - form_for 如何决定对特定请求采取什么操作?

ruby-on-rails - Rails 2.3.5 中的夏令时计算不正确?

ruby-on-rails - 比特桶/Github : permission denied public key

javascript - Rails 5,Cocoon Gem - 嵌套形式中的嵌套形式