提交表单时,将选定对象ID列表传递给控制器

时间:2017-06-29 23:59:52

标签: jquery ruby-on-rails forms

在Rails中没有非常有经验并且正在寻找一个健全性检查 - 我有一个表单供用户创建列表。在这个表单上,我将(最终)有一个搜索字段,在那里他们可以搜索要添加到列表中的现有对象。将有超过50,000个项目,因此不能同时列出所有项目。由于这方面很复杂,像Cocoon这样的东西对我来说似乎不够灵活,我选择在控制器或模型中自己建立列表和项目之间的关联。

所需的工作流程是 -

  1. 用户找到项目并点击“添加”链接
  2. 项目随后显示在页面上的暂存区域中,显示要添加的待处理项目。
  3. 用户添加任何其他所需的项目并提交表单
  4. 项目ID传递给控制器​​,我在其中构建创建列表和所选项目之间的关联。
  5. 我目前的解决方案是将项目ID存储在表单的隐藏字段中,并将其传递给控制器​​。看来我必须禁用Turbolinks来使这个方法工作,因为它不断重新加载页面,因此当我点击其中一个“添加项目”链接时,我将隐藏字段覆盖为默认值。

    有没有一种更清洁的方法可以解决这个问题?

1 个答案:

答案 0 :(得分:1)

信息不足,但我假设您使用的是anchor代码?

您需要禁用anchor标记上的默认值,这样您才能获得刷新等,例如:

<a class="s-inte" />
$('.s-inte').click(function(e){
    e.preventDefault()
})