ruby-on-rails - rails : Restoring contents of non-model form that uses form_tag

标签 ruby-on-rails forms error-handling restore

我的第一个 Rails 应用程序(使用 Rails 3)取得了很好的进展。 MVC 交互一切正常,但我在处理与模型不直接相关的表单时遇到了困难。

我正在使用 form_tag,在成功的情况下,一切正常。但是,错误的处理有些不友好。实际的错误消息存储在 flash 中,并通过 layouts/application.html 显示得很好,但如果表单能够记住用户刚刚填写的内容,我真的很喜欢它。但它没有:所有字段重置为其默认值。

我喜欢对象上 RESTful 操作的表单自动记住它们提交的值的方式,如果有错误,它会以红色突出显示。没有红色突出显示我很好,但如果我能让表单的字段保留提交的值,我真的很喜欢它。

谁能建议如何做到这一点?

相关文件摘录:

View /卡片集/import.html.erb:

<%= form_tag :action => :import_data, :id => @cardset do %>
  ...
  <%= text_field_tag "separator", "", :maxlength => 1 %>
  ...
  <%= text_field_tag "formatting_line" %>
  ...etc (more fields)

Controller /cardsets_controller.rb:
# POST /cardsets/1/import_data
def import_data
  success, message = @cardset.import_data(params, current_user)
  if success
    redirect_to(@cardset, :notice => message)
  else
    flash.now[:error] = message
    render :import
  end
end

最佳答案

text_field_tag 的第二个参数是用于填充字段的值。尝试这样的事情:

  <%= text_field_tag "separator", params[:separator], :maxlength => 1 %>

关于ruby-on-rails - rails : Restoring contents of non-model form that uses form_tag,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4129229/

相关文章:

javascript - HttpPostedFileBase 返回 null

javascript - Wordpress 联系表 7 单选按钮值重定向不起作用

Kotlin:尝试,捕捉,并且只有在最后出现错误时

javascript - AJAX 调用 Controller 操作

ruby-on-rails - 2 表单中的提交按钮

ruby-on-rails - 如何获取 Mongoid 文档的所有字段名称?

swift - 在 Swift 调试器中,如何查看异常被捕获的位置?

ruby-on-rails - 如何在 ruby​​ 中打印数组内的对象元素

未收到 PHP 联系表单消息

asp.net - 无法从浏览器访问IIS中发布的Asp.net网站