0
我很好奇Rails包含.js文件的方式。 从资产管道协助,我很好奇存储在view
中的.js文件。 例如,如果您想将一个AJAX调用应用于PostsController
中名为like
的操作,您只需将like.js.erb
中的相关AJAX代码放置在posts视图文件夹中即可。然后,当用户调用操作like
时,javascript被自动触发。Rails包括.js文件
我的问题是
- 难道是正确的JavaScript文件名匹配某些动作调用操作时自动叫什么名字?
- 如果我想在某个视图中包含一个与任何操作不对应的JavaScript文件,我该怎么办?只需将其包含在应用程序清单中? 更具体地说,我现在有
tag-autocomplete.js.erb
在views/post
。我是否将它移动到assets
文件夹,并将其包含在application.css
?
谢谢。
这不是任意的,虽然,对不对?控制器将有一个用于指定视图是js文件的动作的respond_to块。如果两个视图都存在,那么控制器的动作中指定的视图将会触发,除非我错了。 – John
Rails使用Accept请求头来确定哪些格式可以接受并用于调用第一个匹配的响应者。因此,您在respond_to块中定义format.js,format.html等的顺序可能会影响Rails选择的顺序。 –
我只关心隐式渲染,因为显式渲染似乎与问题不相关。对于隐式渲染,据我所知它仍然是任意的,但这对于显式渲染很有意义。 – tehgeekmeister