gpt4 book ai didi

javascript - Rails, "respond_to do |format|"返回 ActionController::UnknownFormat

转载 作者:行者123 更新时间:2023-11-30 16:03:09 25 4
gpt4 key购买 nike

我正在尝试直接从我的 Controller 运行一些 javascript。

我已经在 views/articles/create.js.erb 中创建了我的 JS 文件

在我的articles_controller中:

def create
@article = Article.new(article_params)
if @article.save && manage_strings
@status = 'success'
else
@status = 'error'
@errormessages= @article.errors.full_messages
end
respond_to do |format|
format.js
end

end

当我运行我的应用时,respond_to do |format| 给我 ActionController::UnknownFormat

我尝试使用以下行更新我的 mime_types.rb 并按照其他地方的建议重新启动我的服务器,但没有结果:

Mime::Type.register "application/javascript", :js

奇怪的是,在我的 languages_controller 中,以下内容与我在 views/languages/list.js.erb 中的 js 文件完美配合。

def list
respond_to do |format|
format.js
end
end

关于这里可能出现的问题有什么想法或建议吗?

感谢任何帮助。

最佳答案

最可能的解释是请求不是在请求JS。为了让 Rails 将请求视为 JS,路径需要以 .js 结尾或具有正确的 AcceptContent-Type header 。并不是说 mime 类型没有在 rails 中注册,因为它为 javascript 注册了最常见的 mime 类型。

  1. 查看rails日志确认:tail -f logs/development.log
  2. 检查浏览器控制台是否有错误。
  3. 检查该表单是否具有 data-remote="true" 属性。

<%= form_for(@thing, remote: true) %>

关于javascript - Rails, "respond_to do |format|"返回 ActionController::UnknownFormat,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37395569/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com