ruby-on-rails – Ruby on Rails:我可以做一个“link_to”来调用create action吗?

如何从link_to正确地调用create action?我正在使用REST(map.resources:recipes).以下是创建操作:
def create
  recipe = Recipe.create(:name => "french fries")
  redirect_to recipe
end

例如,我以为这样的事情可能会起作用:

<%= link_to "Create a default recipe",recipe_path,:method => :post %>

我不知道这是否是推荐(甚至是正确的)方法.任何想法?

解决方法

如果将recipes_path替换为recipe_path,那应该可以工作.

如果你看看耙子路线的输出,你应该看到像:

recipes GET /recipes(.:format) {:controller=>"recipes",:action=>"index"}
        POST /recipes(.:format) {:controller=>"recipes",:action=>"create"}

这是一个线索,对于创建操作的URL帮助器(“recipes_path”)由最后使用_path的控制器名称组成,使用:method => :岗位.使用相同的路径:method => :get(这是认值)映射到索引操作.

记住如果Javascript被禁用,这将不起作用,因为Rails实际上是添加一个创建表单来执行POST的on_click处理程序.删除链接与:confirm选项相同.

相关文章

validates:conclusion,:presence=>true,:inclusion=>{...
一、redis集群搭建redis3.0以前,提供了Sentinel工具来监控各...
分享一下我老师大神的人工智能教程。零基础!通俗易懂!风趣...
上一篇博文 ruby传参之引用类型 里边定义了一个方法名 mo...
一编程与编程语言 什么是编程语言? 能够被计算机所识别的表...
Ruby类和对象Ruby是一种完美的面向对象编程语言。面向对象编...