我可以在rails上的ruby中禁用自动重定向,这是我的示例:在我的控制器中
class WelcomeController < ApplicationController
def index
@a = params[:link]
if @a != nil
Kernel.system("ls")
redirect_to root_path
else
end
end
end
我不想重定向到root_path并保留在当前页面中,所以我删除redirect_to root_path
,如下所示:
def index
@a = "abcd"
if @a != nil
Kernel.system("ls")
else
end
end
但我的应用仍会自动重定向到root_path,我不知道如何解决这个问题,拜托!帮帮我:)。
我的路线:
root 'welcome#index'
match '/upload', to: 'welcome#index', via: 'post'
我的HTML:
<%= form_tag(upload_path, :id => "form_check") do %>
<%= text_field_tag :link %>
<%= submit_tag("Process")%>
<%end%>
答案 0 :(得分:2)
我认为您的问题并非真正自动重定向。你是#34;重定向&#34;到您的索引,因为此行不匹配:match '/upload', to: 'welcome#index', via: 'post'
。
您应该做的是分离索引和上传。它将更容易管理。
路线:
root 'welcome#index'
get 'form' => 'welcome#form', as: :form_path
post 'upload' => 'welcome#upload', as: :upload_path
表单页面:
<%= form_tag(upload_path, :id => "form_check") do %>
<%= text_field_tag :link %>
<%= submit_tag("Process")%>
<%end%>
然后,您可以在欢迎,称为表单和上传中创建新操作。最后一个将您重定向到/表单,这样您就可以再次看到您的表单。