name.html.erb与name.erb之间的差异

name.html.erb与name.erb之间的差异,html,ruby-on-rails,erb,Html,Ruby On Rails,Erb,name.html.erb与name.erb之间有什么区别? 特别是,name.erb不好用有什么原因吗 我知道name.html.erb是惯例-这表示html模板和erb引擎。但如果有任何理由不使用name.html.erb,而是使用name.erb,我就找不到相关信息 我的新工作场所要求我使用name.erb,所以我想知道:这可能有什么问题吗?erb只是一种模板语言,它不限于HTML(您可以使用name.txt.erb或name.js.erb)。从名字中删除html只会让你的生活更加困难(假

name.html.erb
name.erb
之间有什么区别? 特别是,
name.erb
不好用有什么原因吗

我知道
name.html.erb
是惯例-这表示html模板和erb引擎。但如果有任何理由不使用
name.html.erb
,而是使用
name.erb
,我就找不到相关信息


我的新工作场所要求我使用
name.erb
,所以我想知道:这可能有什么问题吗?

erb只是一种模板语言,它不限于HTML(您可以使用
name.txt.erb
name.js.erb
)。从名字中删除
html
只会让你的生活更加困难(假设它有效),因为除非你打开它,否则你将无法知道你在处理什么文件。

简言之,不,不会有任何问题。Erb文件只输出文本。在许多情况下,当阅读应用程序读取/解释包含的文本及其语法有效性时,阅读应用程序会忽略文件扩展名。正如@taglia所建议的,文件扩展名对您来说主要是一个“提示”,操作系统也可以使用它来选择一个默认应用程序来打开文件。请参阅此处以获得更详细的解释:


Rails约定要求模板文件包含输出类型的扩展名,文件名应以.erb扩展名结尾。正如您所提到的,name.html.erb表示一个html模板和erb扩展,它允许将控制器索引操作中的任何实例变量传递到模板中并使用。类似地,name.js.erb表示JavaScript模板。请参见“约定或模板文件”下的内容:

他们说它有效,但他们只在
html
中使用它。所以他们使用
.js.erb
,等等。。我想知道将来是否会有错误。。或者它只是开发人员的一种视觉化的东西?如果它能工作,您应该对rails的当前主要版本感到满意。但很难说将来会怎样。