为什么Rails 5 link_to两次触发GET请求

时间:2020-02-06 07:54:43

标签: ruby-on-rails ruby ruby-on-rails-5

我正在使用link_to并发送参数。

<%= link_to "Create new environment", new_environment_path(:project => @project.id) %>

并尝试以如下形式使用它。

<%= form.hidden_field :project_id, value: params[:project] %>

但是问题是Rails两次接收到GET请求。第一次使用项目参数,第二次不使用参数。

07:31:09 rails.1 | 2020-02-06T07:31:09 [I|app|a82ba4dd] Started GET "/environments/new?project=1" for 192.168.121.1 at 2020-02-06 07:31:09 +0000
07:31:10 rails.1 | 2020-02-06T07:31:10 [I|app|cf3eb6ce] Rendered .vendor/ruby/2.5.0/gems/actionpack-5.2.1/lib/action_dispatch/middleware/templates/rescues/routing_error.html.erb within rescues/layout (906.3ms)
07:31:10 rails.1 | 2020-02-06T07:31:10 [I|app|a82ba4dd] Processing by EnvironmentsController#new as HTML
07:31:10 rails.1 | 2020-02-06T07:31:10 [I|app|a82ba4dd] Parameters: {"project"=>"1"}
07:31:10 rails.1 | 2020-02-06T07:31:10 [D|tax|a82ba4dd] Current location set to Default Location



07:31:10 rails.1 | 2020-02-06T07:31:10 [I|app|306b9b09] Started GET "/environments/new" for 192.168.121.1 at 2020-02-06 07:31:10 +0000
07:31:10 rails.1 | 2020-02-06T07:31:10 [I|app|306b9b09] Processing by EnvironmentsController#new as HTML
07:31:10 rails.1 | 2020-02-06T07:31:10 [D|tax|306b9b09] Current location set to Default Location
07:31:10 rails.1 | 2020-02-06T07:31:10 [D|tax|306b9b09] Current organization set to Default Organization

由于此表单是使用无值的隐藏标签创建的。

<input type="hidden" name="environment[project_id]">

我希望在下面

<input type="hidden" name="environment[project_id]" value="1">

1 个答案:

答案 0 :(得分:0)

jquery库可能已被包含两次。
在资产/javascripts/application.js中检查jquery,jquery_ujs和rails_ujs重复项。