/ / Haml-rails não funciona no Rails 3 Engine - rubi sobre trilhos, rubi sobre trilhos-3, haml, ruby-on-rails-3.2, trilhos-motores

Haml-rails não funciona no Rails 3 Engine - rubi sobre trilhos, rubi sobre trilhos-3, haml, ruby-on-rails-3.2, trilhos-motores

Eu criei um mecanismo de Rails (conforme o Guias de Rails) usando:

rails plugin new address_book --full --mountable

Eu então continuei a seguir as instruções a resposta a esta pergunta, tentando tanto a gem "haml", quanto a gem "haml-rails" (eu gostaria da última, como eu a uso na minha aplicação pai também).

Por algum motivo, depois de correr bundle, e depois

rails g controller pages temp

ele ainda cria os arquivos .erb em vez dos arquivos .haml.

Qualquer ajuda seria apreciada. Meu código é o seguinte:

O arquivo "lib / address_book.rb":

require "address_book/engine"
require "haml-rails"

module AddressBook
end

O arquivo "address_book.gemspec":

$:.push File.expand_path("../lib", __FILE__)

# Maintain your gem"s version:
require "address_book/version"

# Describe your gem and declare its dependencies:
Gem::Specification.new do |s|
s.name        = "address_book"
s.version     = AddressBook::VERSION
s.authors     = ["TODO: Your name"]
s.email       = ["TODO: Your email"]
s.homepage    = "TODO"
s.summary     = "TODO: Summary of AddressBook."
s.description = "TODO: Description of AddressBook."

s.files = Dir["{app,config,db,lib}/**/*"] + ["MIT-LICENSE", "Rakefile", "README.md"]
s.test_files = Dir["test/**/*"]

s.add_dependency "rails", "~> 3.2.5"
s.add_dependency "haml-rails"
# s.add_dependency "jquery-rails"

s.add_development_dependency "sqlite3"
end

O arquivo "Gemfile":

source "http://rubygems.org"

gemspec

gem "jquery-rails"

Respostas:

2 para resposta № 1

tente isto:

Adicione à sua especificação de gem:

s.add_dependency "haml-rails"

do que ir para o seu arquivo engine.rb e adicionar:

config.generators do |g|
g.template_engine :haml
end

último passo: Adicionar aos motores Gemspec:

gem "haml-rails"

Seus geradores agora produzirão as visualizações haml.


1 para resposta № 2

em uma aplicação normal você configuraria isso no app-config em application.rb como:

config.generators do |g|
g.template_engine :haml
end

Não sei se é possível adicionar esse arquivo a um mecanismo. pode ser possível configurá-lo através de um gancho railtie-config.

Apesar dessas opções de configuração, você deve ser capaz de especificar o mecanismo de modelo diretamente em sua linha de comando:

rails g controller pages temp -e=haml