我正在构建一个rails应用程序来导入和管理电子邮件。所以我创建了一个页面,可以上传excel文件并在真正导入之前进行预览。
def import
# ...
end
def preview
# showing emails using rails ajax
end
def confirm_import
# store emails into database
end
因为我需要让用户预览他们想要导入的内容,然后才能导入'导入'我运行ajax请求'预览'。
/* This is the import.html.erb */
<%= form_tag(preview_path, method: "post", remote: true) do %>
<%= text_area_tag 'email-list' %>
<%= submit_tag "Preview" %>
<% end %>
但在此之后我无法将这些电子邮件作为参数[&#39;电子邮件&#39;]。我现在所做的是预览.js.erb&#39;我使用javascript将这些电子邮件存储在隐藏的HTML标记&#39; result_email_list&#39;中,然后将其发送到&#39; confirm_import&#39;。
/* in import.html.erb, after preview.js.erb is done */
<%= form_tag(confirm_import_path, method: "post") do %>
<%= hidden_field_tag :result_email_list %>
<%= submit_tag "Confirm" %>
<% end %>
还有更多的Rails方法吗?在HTML中存储数据似乎是一个非常糟糕的主意。