在Rails中进行可编辑的就地编辑无路由匹配[POST]

时间:2013-03-18 09:24:52

标签: jquery ruby-on-rails json

我正在使用Rails 3和X-editable进行就地编辑。添加必要的文件后,当我尝试更新时,它会返回No route matches [POST]

我尝试了以下不同的代码行:

<a href="#" id="username" data-type="text" data-pk="1" data-url="/post" data-original-title="Enter username">superuser</a>

<a href="#" id="username" data-type="text" data-resource="post" data-pk="1" data-url="/post" data-original-title="Enter username">superuser</a>

<a href="#" id="username" data-type="text" data-model="post" data-pk="1" data-url="/post" data-original-title="Enter username">superuser</a>

我已经将我的控制器编码为接受JSON,但根本没有数据被提供给控制器。

我错过了什么?感谢。

1 个答案:

答案 0 :(得分:2)

@muttonlamb是对的。我应该检查一下。 post不在路线中,而put则是。

根据Rails routing guide,要编辑现有记录,应使用put,而不是postpost仅用于新记录。

x-editable的默认ajax调用是post,但我可以使用以下内容将其更改为put

$().editable({
  ajaxOptions: {
    type: 'put'
  }
});

可在此处找到更多选项:http://vitalets.github.com/x-editable/docs.html#editable