Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/67.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
Javascript Rails响应_抛出ActionController::UnknownFormat_Javascript_Ruby On Rails - Fatal编程技术网

Javascript Rails响应_抛出ActionController::UnknownFormat

Javascript Rails响应_抛出ActionController::UnknownFormat,javascript,ruby-on-rails,Javascript,Ruby On Rails,所以,我试图用一个js文件响应一个动作 def my_schedule respond_to do |format| format.js end end 在我看来,我有'my_schedule.js.erb',但它甚至没有执行,rails在控制器中中断并向我抛出了一个错误:ActionController::UnknownFormat,我在那里有响应 我试图补充 respond_to :js, :json, :html 开始时,我的控制器退出了操作,但仍然

所以,我试图用一个js文件响应一个动作

  def my_schedule
    respond_to do |format|
      format.js
    end
  end
在我看来,我有'my_schedule.js.erb',但它甚至没有执行,rails在控制器中中断并向我抛出了一个错误:ActionController::UnknownFormat,我在那里有响应

我试图补充

respond_to :js, :json, :html
开始时,我的控制器退出了操作,但仍然不工作。
需要帮助调试此文件并了解respond_to的实际工作原理。

format.js
将只响应xhr请求。仅导航到指向此控制器和方法的路由无法触发此响应

您可以通过将respond_to block更改为来测试
js.erb
的执行

def my_计划
回应待办事项|格式|
format.html
format.js
结束
结束
然后在与js.erb相同的视图文件夹中创建一个my_schedule.html.erb文件,其中包含以下内容


请注意,您可能需要调整该路径,我只是猜测一下


然后导航到之前尝试的同一路径。您应该会看到一个链接,单击该链接时将触发js响应。

format.js
将只响应xhr请求。仅导航到指向此控制器和方法的路由无法触发此响应

您可以通过将respond_to block更改为来测试
js.erb
的执行

def my_计划
回应待办事项|格式|
format.html
format.js
结束
结束
然后在与js.erb相同的视图文件夹中创建一个my_schedule.html.erb文件,其中包含以下内容


请注意,您可能需要调整该路径,我只是猜测一下


然后导航到之前尝试的同一路径。您应该会看到一个链接,单击该链接将触发js响应。

您的视图中是否有
remote:true
?否,我的html.erb文件只包含html,没有任何表单,我的js.erb也没有。我还没有任何东西在里面。我现在只是想测试一下我是否可以访问它。我想用我的js.erb响应,以便向我的控制器发送一个ajax请求以创建一个新模型。您的视图中是否有
remote:true
?否,我的html.erb文件只包含html,没有任何表单,我的js.erb也没有。我还没有任何东西在里面。我现在只是想测试一下我是否可以访问它。我想用我的js.erb来响应,以便向我的控制器发送一个ajax请求以创建一个新的modelOk,我明白你的意思,以及它应该如何工作。我正在尝试测试它,我在html.erb视图中添加了一个链接到remote:true,js.erb中的一些代码,但是当我点击我的链接时,它抛出了一个关于我的请求
VM1899:2未捕获语法错误:processResponse处的无效或意外令牌(rails ujs.js:272)在rails ujs.js:200的XMLHttpRequest.xhr.onreadystatechange(rails ujs.js:255)
也许我试图通过错误的方式来实现一些东西。在这里,我想让我的用户选择一些东西,根据他的选择,我想将这些信息发送到我的控制器并创建一个rails模型。创建一个rails模型?还是在模型中创建记录?两件截然不同的事情。就错误而言,我怀疑
js.erb
文件中的javascript是错误的。你能用你试图执行的javascript更新你的问题吗?模型中的记录是的。我的JS文件只有一个console.log来测试它。我想出了另一种方法来做我想做的事。但是我仍然对如何在ajax中发送post请求、如何在模型中创建记录(供以后使用)感到困惑。请看本文:我认为您正在添加一个不需要的额外步骤。您可以让表单直接提交给控制器,该控制器将通过
remote:true
在您的模型中使用ajax创建记录。好的,我明白您的意思,以及它应该如何工作。我正在尝试测试它,我在html.erb视图中添加了一个链接到remote:true,js.erb中的一些代码,但是当我点击我的链接时,它抛出了一个关于我的请求
VM1899:2未捕获语法错误:processResponse处的无效或意外令牌(rails ujs.js:272)在rails ujs.js:200的XMLHttpRequest.xhr.onreadystatechange(rails ujs.js:255)
也许我试图通过错误的方式来实现一些东西。在这里,我想让我的用户选择一些东西,根据他的选择,我想将这些信息发送到我的控制器并创建一个rails模型。创建一个rails模型?还是在模型中创建记录?两件截然不同的事情。就错误而言,我怀疑
js.erb
文件中的javascript是错误的。你能用你试图执行的javascript更新你的问题吗?模型中的记录是的。我的JS文件只有一个console.log来测试它。我想出了另一种方法来做我想做的事。但是我仍然对如何在ajax中发送post请求、如何在模型中创建记录(供以后使用)感到困惑。请看本文:我认为您正在添加一个不需要的额外步骤。您可以让表单直接提交给控制器,控制器将通过
remote:true
ajax在您的模型中创建记录