Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/60.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
Rails部分不采用javascript格式_Javascript_Ruby On Rails_Ujs - Fatal编程技术网

Rails部分不采用javascript格式

Rails部分不采用javascript格式,javascript,ruby-on-rails,ujs,Javascript,Ruby On Rails,Ujs,我以前多次添加JavaScript片段,但不可否认,这不是一段时间。简而言之,我错过了一些愚蠢的事情 当我尝试在此视图末尾呈现部分“deleteme.js”时: /app/views/projects/myview.html.slim: h2 Stuff goes here render partial: '/projects/thisworks' # Render html partial render partial: '/projects/deleteme.js' # Render j

我以前多次添加JavaScript片段,但不可否认,这不是一段时间。简而言之,我错过了一些愚蠢的事情

当我尝试在此视图末尾呈现部分“deleteme.js”时:

/app/views/projects/myview.html.slim:

h2 Stuff goes here

render partial: '/projects/thisworks' # Render html partial

render partial: '/projects/deleteme.js' # Render js partial...fails
这使得这个部分:

/app/views/projects/_deleteme.js.erb:

console.log("Oh FFS, Work");
我得到:

ActionView::项目中缺少模板#显示

显示 /Users/aj/Web/Rails/sh3/app/views/projects/show.html.slim 第5行的位置:

缺少带有{:locale=>[:en]的部分/projects/deleteme, :formats=>[:html],:handlers=>[:erb,:builder,:slim,:jbuilder, :咖啡,:火腿]}。搜索:*

罪魁祸首是它只搜索格式=>[:html],但我认为appending.js会自动告诉rails搜索javascript。如果有人知道为什么找不到JS模板,我会非常感激。操作代码是一个非常基本的代码:

def show
  @project = Project.find(params[:id])
end
您的部分命名与Javascript动作命名交织在一起

 /app/views/projects/deleteme.js.erb:
重命名javascript文件,删除_

你必须确保你的节目响应js

def show
  respond_to do |format|
    format.js
    format.html
  end
end

您正在slim模板中调用分部,因此它希望找到

app/views/projects/_deleteme.js.slim

非常感谢布拉德。好消息是错误现在已更改为:formats=>[:js],坏消息是,错误在其他方面是相同的。有什么想法吗?您必须确保控制器操作被告知响应AJAX def show respond_to do | format | format.js format.html endI认为您需要编辑原始问题和更多代码,并添加确切的错误。
app/views/projects/_deleteme.js.slim