Ruby on rails 跳过控制器中的新方法(右键转到创建方法)

Ruby on rails 跳过控制器中的新方法(右键转到创建方法),ruby-on-rails,Ruby On Rails,在Rails中,我想完全跳过控制器中的“new”方法,直接转到create方法。(我不需要提交任何表单数据,只想根据当前登录用户的数据直接创建对象。) 在rake路由中,我没有看到允许我直接链接到控制器的create方法的前缀,因此我认为我应该链接到新方法,并在不接受任何输入的情况下重定向到create操作 我尝试了以下方法: def new create end def create @request = Request.new @request.request

在Rails中,我想完全跳过控制器中的“new”方法,直接转到create方法。(我不需要提交任何表单数据,只想根据当前登录用户的数据直接创建对象。)

在rake路由中,我没有看到允许我直接链接到控制器的create方法的前缀,因此我认为我应该链接到新方法,并在不接受任何输入的情况下重定向到create操作

我尝试了以下方法:

 def new
    create
 end

 def create
    @request = Request.new
    @request.requestor_id = current_user.id
    @request.status = "S1"
    @request.save

    respond_with(@request, :location => "/products/findexchanges")
 end

浏览数据库时,我可以看到这是在调用创建操作,并将记录添加到数据库中,但完成后,它将我重定向到new.html.erb,而不是创建方法末尾定义的位置。

创建操作应该由
POST
触发,而不是
GET
,这就是为什么它没有特定的路线。

使用
按钮链接到
,而不是
链接到
。我尝试使用
链接到
,即使指定了
方法::post,action::create
,我仍然需要使用GET进行索引。使用
按钮_
并在
#####u路径
中传递参数后,它直接转到
创建
方法并将数据添加到数据库中。虽然我不确定这样做是正确的还是安全的

好的,我试着用:post%>链接到create方法,但这仍然将我重定向到new.html.erb。这一次没有调用create方法,您已经接近了。仔细阅读
link\u to
的文档,了解如何传递
方法
选项。