繁体   English   中英

在Rails中存储前端功能吗?

[英]Store front-end features in Rails?

在公用文件夹中,我们有样式表,javascript和图像。

我想添加一个具有自己的CSS,JS和图像的前端功能,但是根据此层次结构,我必须像这样存储它们:

stylesheets/calendar/main.css
javascripts/calendar/cal.js
javascripts/calendar/cal2.js
images/calendar/front.jpg
images/calendar/button1.jpg
images/calendar/button2.jpg
images/calendar/button3.jpg

我不喜欢我完全拆分功能。

有没有一种方法可以按功能组织文件?

calendar/stylesheets/main.css
calendar/javascripts/cal.js
calendar/javascripts/cal2.js
calendar/images/front.jpg
calendar/images/button1.jpg
calendar/images/button2.jpg
calendar/images/button3.jpg

遵循OOP模式,这将是一个更好的结构。

正如其他人所提到的,您几乎可以做任何您喜欢的事情。

这是我们当前正在使用的系统:

将文件放入与“布局”相对应的目录中,它们适用于:

/web/images
/web/javascripts
/web/stylesheets

/mobile/images
/mobile/javascripts
/mobile/stylesheets

/admin/etc

顶级目录(/ images / javascripts / stylesheets)用于真正常见的元素(例如jquery,css重置脚本和标准徽标)。

客户端库软件包保留在其自己的目录中,而不是散布到标准的Rails目录中。 这大大有助于长期维护。

以colorbox为例:

而不是:

 /javascripts/colorbox.js
 /stylesheets/colorbox.css

我们有:

 /web/libs/colorbox/colorbox.js
 /web/libs/colorbox/colorbox.css

是的,Slobodan Kovacevic是对的,

您可以组织到任何地方

另一种方法是

stylesheet_link_tag "#{RAILS_ROOT}/calendar/stylesheets/main.css"

当您遇到问题时,请按照以下步骤操作

stylesheet_link_tag '/calendar/stylesheets/main.css'

您需要使用Helper方法来优化另一种方法。

从帮助程序调用每个文件并在轨道上使用它。

您可以根据需要以任何方式组织公用文件夹中的内容。 唯一的区别是,当您使用一些Rails帮助器来处理公用文件夹中文件的路径时,必须指定这些文件的位置(如果将它们移出了默认位置)。

例如,对于stylesheet_link_tag,您必须执行以下操作:

stylesheet_link_tag '/calendar/stylesheets/main.css'

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM