Ruby on rails 如何显示刚才在“表格”中输入的表格内容:确认=>&引用;RubyonRails上的选项

Ruby on rails 如何显示刚才在“表格”中输入的表格内容:确认=>&引用;RubyonRails上的选项,ruby-on-rails,webforms,confirm,Ruby On Rails,Webforms,Confirm,我正在尝试一种方法来确认输入的信息,然后再将其保存到数据库中 考虑制作此处讨论的个人确认页面 然而,我的表格包含一个使用回形针的附加文件,这使得执行起来更麻烦 我想到的只是一个:confirm=>弹出窗口,显示用户需要的信息 他刚进来 例如,问题是如何显示用户刚刚输入的信息 <% form_for @entry, :html => { :multipart => true } do |f| %> <%= f.error_messages %>

我正在尝试一种方法来确认输入的信息,然后再将其保存到数据库中

考虑制作此处讨论的个人确认页面

然而,我的表格包含一个使用回形针的附加文件,这使得执行起来更麻烦

我想到的只是一个:confirm=>弹出窗口,显示用户需要的信息 他刚进来

例如,问题是如何显示用户刚刚输入的信息

<% form_for @entry, :html => { :multipart => true } do |f| %>
  <%= f.error_messages %>


    <%= f.label :name %><br />
    <%= f.text_field :name %>

    <%= f.label :file %><br />
    <%= f.file_field :file %>

    <%= f.submit 'Create', :confirm => "????? " %>

<% end %>
{:multipart=>true}do | f |%>


"????? " %>
Rails submit方法的确认选项只能采用文本值

如果要动态生成确认文本,一种方法是编写自己的HTML提交标记,并编写自定义javascript来分析要在生成的文本中使用的字段

或者您可以使用Rails提交方法,但可以使用类似JQuery的方法向其添加事件处理程序。

我只想抛出我的。这就是Rails的全部功能

<%= f.submit 'Create', :onclick => "confirm('Name is ' + $F('entry_name'));" %>
“确认('Name is'+$F('entry_Name'));”%>

(注意,没有测试它,但它看起来很接近。确认是一个核心js函数,不是任何库的一部分)

鉴于您正在加载附件,呈现包含从附件派生的信息的暂存视图可能不是一个坏主意,允许用户确认。如果是图像,则显示文件;如果是文本文件,则显示文本的第一段,等等

这将需要更多的工作,而不仅仅是添加一个确认弹出窗口,但我觉得增强的用户体验值得付出额外的努力

我不熟悉回形针的工作方式。所以你大部分时间都是靠你自己来获取私密的细节

您可能必须先创建一条记录,然后才能使用上载文件的示例呈现staging视图。为了实现这一点,我在所讨论的模型上设置了一个“活动”列,默认为false

用法如下所示:

  • 用户完成新表单
  • 更新附件并保存记录,活动字段设置为false
  • 重定向到确认页面,该页面本质上是带有确认链接/按钮和取消链接/按钮的显示页面
  • a。单击“确认”链接/按钮时,它会向控制器发送一个请求,触发此记录设置的更新操作,并将其设置为“活动”

    b。单击“取消”链接/按钮时,它会向控制器发送一个请求,触发对该记录的销毁操作

  • 剩下的就是设置一个周期性任务来删除不活动的对象,这些对象在足够长的时间之前就被装箱了,可以安全地假设用户刚刚结束了浏览器会话