我有一个远程link_to定义为
link_to "Publish", resource_path, data: { method: :patch, remote: true, params: { resource:{ published: true } }.to_param }
在浏览器中手动点击此链接时,所有内容都按预期工作,并且正确的参数将被发送到更新操作,一切都很好。
当使用Turnip,RSpec,Capybara和Poltergeist运行测试来复制它时,我没有这样的运气,这是由于表格参数不存在,即:" param缺失或值是空的:"
这是Poltergiest的限制吗?还是配置问题?
测试成功点击此链接,正如预期的那样使用PATCH的HttpMethod调用正确的操作 - 表单中没有参数。
答案 0 :(得分:0)
参见https://github.com/teampoltergeist/poltergeist/issues/532 ......和https://github.com/ariya/phantomjs/issues/11384
这似乎是一个恶作剧问题。为了使它工作:
您的链接:
link_to "Publish", resource_path, data: { method: :post, remote: true, params: { _method: :patch, resource:{ published: true } }.to_param }
......或类似的东西。