【发布时间】:2011-02-28 15:31:24
【问题描述】:
我正在为 jruby on rails 应用程序创建一个新插件,该插件最终将变成一个 gem。在我的插件中,我有控制器、助手和视图。对于我的观点,我想使用 Haml。问题是我似乎无法让它认识到它们是 haml 模板。甚至有可能做到这一点吗?插件有没有办法让 Haml 作为其视图的依赖项?我的意思是,我打算让我正在创建的插件有一个由插件创建的视图,可供应用程序开发人员使用。
例如:
vendor/
plugins/
my_plugin/
lib/
app/
views/
my_plugin_demo/
index.haml.html
controllers/
my_plugin_demo_controller.rb
helpers/
在我插件的 init.rb 中,我尝试了:
require 'my_plugin'
require 'haml' #doesn't seem to make a difference :(
但这似乎没有任何区别。有没有人有这方面的经验?我似乎找不到任何关于如何完成这项工作的文档。插件视图是否仅限于 .erb 模板?
更新:@Jens Fahnenbruck
我还是有点困惑...你建议我将以下内容放入 my_plugin 的 init.rb 文件中吗?
# Load Haml and Sass.
# Haml may be undefined if we're running gems:install.
Haml.init_rails(binding) if defined?(Haml)
require 'my_plugin'
我尝试这样做,但没有成功。它仍然给我以下页面错误:
Missing template my_plugin_demo/index.erb in view path app/views
不确定我是否理解您的建议...
【问题讨论】:
-
在没有
if defined?(Haml)的情况下尝试Haml.init_rails(binding),看看是否正确加载了Haml
标签: ruby-on-rails rubygems ruby-on-rails-plugins haml