【发布时间】:2010-01-11 11:08:30
【问题描述】:
我正在制作如下介绍的 Rails 模板文件:
我想制作一个大文件,所以不要这样做:
file "bigfile.txt", <<-EOF
content of the file...
EOF
我想从另一个文件中读取内容。我现在拥有的是:
file "public/stylesheets/sass/960.sass", File.read(File.expand_path(File.join(File.dirname(__FILE__), "960.sass")))
该文件与 rails 模板文件位于同一目录中。问题是:当我尝试使用模板制作 Rails 应用程序时(即rails new_app -m rails_template/rails_template.rb,我收到以下错误:
The template [rails_template/rails_template.rb] could not be loaded. Error: (eval):129:in `read': No such file or directory - /Users/myusername/Desktop/new_app/960.sass
这都是因为__SELF__ 没有按我预期的方式工作。我希望__SELF__ 是模板文件本身,但实际上,__SELF__ 指向应用程序的根目录或其他位置。
有没有办法在 Rails 模板中加载文件?
【问题讨论】:
-
看文章我看不到任何接近这个的东西,你到底想在这里实现什么?从单独的文件中加载样式表?为什么你需要加载样式表呢?不能直接传给浏览器吗?
-
我正在制作自己的自定义 Rails 模板。我正在尝试将 SASS 文件加载到使用模板生成的新应用中。
标签: ruby-on-rails ruby file templates