Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/56.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails Rails表单_的方法:get无法更新视图_Ruby On Rails - Fatal编程技术网

Ruby on rails Rails表单_的方法:get无法更新视图

Ruby on rails Rails表单_的方法:get无法更新视图,ruby-on-rails,Ruby On Rails,使用带有rails5的表单_,我想通过单击“获取”按钮来显示当前时间文本。但是文本没有更新 虽然我按下了按钮, 文本未更新 更新响应文本。 用户_controller.rb如下所示 require 'date' class UsersController < ApplicationController def index @message = Time.now.to_s end end

使用带有rails5的表单_,我想通过单击“获取”按钮来显示当前时间文本。但是文本没有更新

虽然我按下了按钮,

文本未更新

更新响应文本。

用户_controller.rb如下所示

require 'date'
class UsersController < ApplicationController
  def index
    @message = Time.now.to_s
  end
end                                                                                                     
<div><%= @message %></div>
<%= form_with method: :get, url: users_path do |form| %>
    <%= form.submit 'SUBMIT'%>
<% end %>
<%= link_to 'LINK', { :controller => :users, :action => :index } %>
Started GET "/users?utf8=%E2%9C%93&commit=SUBMIT" for 127.0.0.1 at 2018-08-17 19:13:32 +0900
Processing by UsersController#index as JS
  Parameters: {"utf8"=>"✓", "commit"=>"SUBMIT"}
  Rendering users/index.html.erb within layouts/application
  Rendered users/index.html.erb within layouts/application (4.7ms)
Completed 200 OK in 153ms (Views: 112.5ms | ActiveRecord: 0.0ms)

:users,:action=>:index}%>


:users,:action=>:index}%>

您可以尝试以下方法吗

<%= form_with method: :get, url: users_path, local: true do |form| %>

说明: 我在你的日志中注意到

由UsersController#索引为JS进行处理


这意味着表单是使用
format::js
提交的,因为
form_with
现在默认为
remote:true
,正如您所看到的(您不能执行
remote:false
,而是使用
local:true
),与默认情况下
form\u for
form\u标记
where
remote:false
不同,您可以指定
remote:true

当您单击Submit按钮时,是否可以从日志文件中添加日志?显示服务器日志以便单击按钮。
form\u的
语法可能不正确,请用'form_tag'检查它。或者尝试一下这种语法
你确定它在点击按钮时点击了
index
操作吗?因为OP使用的是Rails 5,我相信
form_tag
form_for
很快就会被弃用,而赞成由,其中的一个是在此基础上实现和合并的。@Jay ArPolidario在这种情况下,我已经建议OP在注释中使用语法正确的形式_。@Gabbar感谢您的回答。虽然我尝试了第二个代码,但它不起作用。但是,我尝试了本地:真的,你在评论中提到的,然后它的工作!没问题3.
<%= form_with url: users_path, method: :get do |form| %>
  <%= form.submit 'SUBMIT'%>
<%end%>
<%= link_to 'LINK', { :controller => :users, :action => :index } %>  
<%= form_with method: :get, url: users_path, local: true do |form| %>