发布而不更改页面?

时间:2013-07-24 18:37:47

标签: ruby-on-rails ajax

我认为AJAX可能是我回答的最合理的路径,但我找不到使用AJAX帖子的方法,而不会使我的路由惯例无用。据我所知,使用

<%= form_for(@post) do |f| %>

你不能给form_for帮助一个ID-至少,不能用'do | f |'在那里。如果我正确理解这行代码..

$("#test").ajaxForm({url: '/posts', type: 'post'})

然后我需要给我的表单标签一个ID。如果这是真的,我可以通过做

来解决这个问题
<form id="test">

但是,不仅我必须重命名所有帮助程序,我还必须编辑我的控制器来解析表单发布的数据。鉴于我的项目规模,这可能需要一周时间......并且它在一定程度上削减了规模潜力。

为什么我这样做的概要 - 我有一个技术上是一个“编辑”页面的表单,但它更多的是show,edit和new。上个月的工作,上个月工作的编辑框和本月的新框都有各种信息。页面有四个主要的“块”,每个都有一组单独的信息,这些信息可能存储在一个单独的数据库表中,也可能不存储在单独的数据库表中,这些表可能与任何其他表有关,也可能没有。

员工能够每隔几秒左右定期发布更新,这一点非常重要。但是,这会在每次发布时杀死系统资源,它会重新加载整个页面。我有代码使用AJAX在按钮点击时刷新特定的块,但是如果整个页面在帖子之后自动重新刷新,这对我没有好处。有没有办法在更新操作中禁用重新加载,或者使用AJAX以不同的方式发布,以便页面不刷新/重定向?

使用rails 3.0.20 使用ruby 1.8.7(2012-10-12 patchlevel 371) 使用Ubuntu 12.04 LTS

1 个答案:

答案 0 :(得分:1)

我会查看form_for docs(http://api.rubyonrails.org/classes/ActionView/Helpers/FormHelper.html#method-i-form_for)。

快速回答是您需要将remote: true添加到您的form_for。

相关问题