Rails 无法识别应用程序.html.haml



版本> ruby 1.9.2p290, Rails 3.1.0, Ubuntu 12.04

我的RoR应用没有检测到application.html.halm。因此,HTML标记不会被解释,de CSS和其他通用文件也不会被包含在内。其余的视图呈现在halm中,并且正在工作:)

这里是Application controller

class ApplicationController < ActionController::Base
  protect_from_forgery
end

电影控制器

# This file is app/controllers/movies_controller.rb
class MoviesController < ApplicationController
  def index
    @movies = Movie.all
  end
  def show
    id = params[:id]
    @movie = Movie.find(id)
    # will render app/views/movies/show.html.haml by default
  end
  def new
    # default render 'new' template
  #  debugger
  end
  def create
    @movie = Movie.create!(params[:movie])
    flash[:notice] = "#{@movie.title} was succesfully created."
    redirect_to movies_path
  end
end`# This file is app/controllers/movies_controller.rb
class MoviesController < ApplicationController
  def index
    @movies = Movie.all
  end
  def show
    id = params[:id]
    @movie = Movie.find(id)
    # will render app/views/movies/show.html.haml by default
  end
  def new
    # default render 'new' template
  #  debugger
  end
  def create
    @movie = Movie.create!(params[:movie])
    flash[:notice] = "#{@movie.title} was succesfully created."
    redirect_to movies_path
  end
end

app/views/布局/application.htlm.halm

!!! 5
%html
  %head
    %title Rotten Potatoes!
    = stylesheet_link_tag 'application'
    = javascript_include_tag 'application'
    = csrf_meta_tags
  %body
    = yield

结果解释为注意HTML和其他标签的缺失:

<h2>All Movies</h2>
<table id='movies'>
  <thead>
    <tr>
      <th>Movie Title</th>
      <th>Rating</th>
      <th>Release Date</th>
      <th>More Info</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td>EEEe</td>
      <td>G</td>
      <td>2013-02-27 00:00:00 UTC</td>
      <td><a href="/movies/27">More about EEEe</a></td>
    </tr>
  </tbody>
</table>
<a href="/movies/new">Add new movie</a>

重命名:

app/views/layouts/application.htlm.halm

:

app/views/layouts/application.html.haml

最新更新