Frage

Ich erhalte Ruby on Rails gesetzt auf einer neuen Installation von Snow Leopard auf. Nach kämpft (und Schlagen ) MySQL und Sphinx Probleme, ich auf einen dummen Fehler bin stecken zu HAML Zusammenhang stehen.

Im Wesentlichen eine fehlende Vorlage Fehler für jede Ansicht Ich erhalte die HAML verwendet. Ich kann fein eine leere xxx.html.erb Datei und und eine (leere) Seite geladen hinzufügen. Aber xxx.html.haml den Fehler wirft, obwohl die Datei auf jeden Fall in dem entsprechenden Verzeichnis vorhanden ist.

Hier ist der Fehler aus dem Entwicklungs-Server:

ActionView::MissingTemplate (Missing template sections/index.erb in view path app/views):
  haml (2.2.4) rails/./lib/sass/plugin/rails.rb:19:in `process'

Ich bin das haml Juwel (2.2.4) mit Schienen gem (2.3.4) und Rubin 1.8.7. Ich habe haml --rails laufen. von meinem RoR app Root-Verzeichnis; die init-Datei ist im Kreditoren / plugins / haml Verzeichnis. Ich habe bestätigt, dass "require 'haml'" => true über IRB.

Jede mögliche Hilfe würde geschätzt!

Als Reaktion auf Yaraher:

Versucht un- und neu zu installieren, die keine Fehler erhoben, außer mit dem rdocs ( "Could not Hauptseite README.rdoc finden").

In Skript / Konsole:

>> require 'haml'
=> []

Update:

eine alte Version von Rails installieren bekannt mit HAML in diesem Projekt zu arbeiten scheint „fixiert“, das Problem zu haben. Ich würde immer noch gespannt sein, eine wirkliche Antwort auf dieses Problem zu hören -. Ich will nicht auf 2.3.2 festzustecken

sudo gem install -v 2.3.2 rails

Update 2:

Dies wird auf jeden Fall durch eine Differenz zwischen Rails 2.3.2 und 2.3.4 verursacht. Mit beiden installierten Edelsteinen kann ich die in meiner environment.rb Datei verwendet wird. HAML funktioniert mit 2.3.2 und Brüche wie bei 2.3.4 beschrieben.

War es hilfreich?

Lösung

Zeit für die peinliche Antwort auf diese Frage:

Es gibt einen Unterschied zwischen Rails 2.3.2 und 2.3.4, die nicht xxx.haml.html Dateien als Dateien erkennt, die von HAML analysiert werden soll (oder ERB); dies war in 2.3.2 in Ordnung. HAML Dateien sollten immer xxx.html.haml anwyay benannt werden, so ist dies nicht einmal ein Fehler.

Option eingeschaltet (standardmäßig) in meiner neuen Snow Leopard Installation

Ich wusste nicht, dass dies das Problem war, weil ich die „verstecken Dateierweiterungen“ hatte. Also, wenn ich versuchte, die Dateierweiterung durch Finder Umstellung auf html.haml dies zu testen, ist es tatsächlich geändert haml.html.haml oder einig Unsinn.

Die Moral der Geschichte:. Ich lief das folgende Skript und jetzt HAML arbeitet mit Rails 2.3.4

path = '/path_to_rails_app/views/'
dir = Dir.new(path)
dir.each do |d|
  if File.directory?(path+d)
    Dir.new(path+d).each do |f|
      if (f =~ /.*\.haml\.html$/) != nil
        File.rename(path+d+'/'+f, path+d+'/'+f.gsub('haml.html', 'html.haml'))
      end
    end
  end
end

Andere Tipps

Versuchen Sie Ihre Vorlage

umbenennen
sections/_index.haml

oder

sections/__index.haml
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top