Rails внезапно пытается отобразить ERB вместо Haml, и я не могу понять, почему. Я создал новые проекты rails, переустановил Haml и переустановил Rails.
Вот именно те шаги, которые я предпринимаю при создании приложения (Rails 2.3.2):
rails> rails test
rails> cd test
rails\test> haml --rails .
rails\test> ruby script\generate model user email:string password:string
rails\test> ruby script\generate controller users index
rails\test> rake db:migrate
Вот как выглядит UsersController:
class UsersController < ApplicationController
def index
@users = User.all
end
end
Мои маршруты:
ActionController::Routing::Routes.draw do |map|
map.resources :users
end
Теперь я создаю views \ users \ index.html.haml :
%table
%th(style="text-align: left;")
%h1 Users
- for user in @users
%tr
%td= user.email
%td= user.password
и запустить сервер ...
Я перехожу на localhost: 3000 \ users и получаю это сообщение об ошибке:
Template is missing
Missing template users/index.erb in view path app/views
По какой-то причине Rails пытается найти и отобразить файлы .erb вместо файлов .haml.
vendor \ plugins \ haml \ init.rb существует без изменений.
Я переустанавливал Haml (Pretty Penny) несколько раз и все еще получаю те же результаты.
Я также попытался добавить config.gem 'haml' в мой environment.rb, но это также не работает.
Я не могу понять, почему рельсы вдруг не окажут мне хмеля.