【问题标题】:How to retain data in input fields after a page reload Rails页面重新加载后如何在输入字段中保留数据 Rails
【发布时间】:2018-09-08 16:49:30
【问题描述】:

我正在使用 Rails 构建一个工作应用程序。在我的工作“新”页面中。我有一个预览功能,用户可以单击“预览按钮”来查看发布时工作的样子。在预览页面上,用户可以发布职位或点击“编辑”返回职位新页面。

问题是,当单击“编辑”时,页面会重新加载,并且输入字段中的所有数据都会被删除。我希望能够在页面重新加载后保留数据,以便用户可以编辑页面而无需从头开始填写表格。 这是我的控制器操作

def create
    @job = Job.new(job_params)
      if params[:previewButt] == "Preview"
        flash[:alert] = "This is a PREVIEW of your job posting".
        render :create
      elsif params[:createButt] == "Post Job"
        @job.save
        redirect_to root_path
      elsif params[:backButt] == "Make changes"
        render :new
      end
  end

在“预览”或“创建”视图中。我在页面底部有这个

<div class="col-md-9 text-center" style="margin-top: 110px;">
      <%= f.button :submit , name: "backButt", value: "Make changes" %>
      <%= f.button :submit , name: "createButt", value: "Post Job", class: "btn btn-success post-btn" %>
</div>

因此,理想情况下,当用户单击“进行更改”并且页面重新加载以呈现“新”时,表单输入中的数据应该仍然可用。

【问题讨论】:

  • 你能在这里添加你的新模板文件吗

标签: javascript ruby-on-rails ruby ruby-on-rails-3 simple-form


【解决方案1】:

您可能正在寻找类似的东西:

<%= form_for @job, url: {action: "create"} do |f| %>
  <%= f.text_field :something %>
  <%= f.submit "Make changes" %>
  <%= f.submit "Post Job" %>
<% end %>

请参阅:2.2 将表单绑定到对象 - http://guides.rubyonrails.org/form_helpers.html#binding-a-form-to-an-object

【讨论】:

  • 我必须在我的控制器“创建”操作中进行哪些更改?
  • 我通过添加 @job.title} %> 诀窍是在创建页面的每个输入字段中添加隐藏字段
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-07-27
相关资源
最近更新 更多