Ruby on rails简单表单文本字段值被默认值覆盖

时间:2015-07-23 04:20:23

标签: ruby-on-rails ruby twitter-bootstrap simple-form

我使用的是一个简单的表单,其中包含一个默认值的文本字段。一旦用户设置了他们想要的值,默认值应该被用户期望的值覆盖。但每次用户打开表单进行编辑时,他们会一次又一次地看到默认值:

<%= f.input :notes, input_html: {:value => @order_f.decorate.template_message, rows: 12} %>

2 个答案:

答案 0 :(得分:2)

尝试设置占位符,而不是设置值:

<%= f.input :notes_to_deliverer, placeholder: @order_f.decorate.deliverer_template_message, input_html: {rows: 12} %>

答案 1 :(得分:1)

如果您不需要占位符,那么您可以这样做:

<%= f.input :notes_to_deliverer, input_html: {:value => object.notes_to_deliverer.present? ? object.notes_to_deliverer : @order_f.decorate.deliverer_template_message, rows: 12} %>

此处的对象是您为其创建的form。另外,请确保在表单提交时将此值保存在数据库中。如果假设你的默认值存储我的意思是如果用户没有输入任何值,那么你需要存储它然后最好在数据库端使用默认值。您可以在迁移文件中进行设置。

希望这有帮助。