2012-04-15 127 views
1

Im使用twitter bootstrap設計。我想,只要我在渲染布局添加到操作我收到此錯誤信息Rails 3渲染布局在行動導致錯誤與Twitter Bootstrap

undefined method `model_name' for NilClass:Class 

Extracted source (around line #2): 

1: <%- model_class = @movie.class -%> 
2: <h1><%=t '.title', :default => model_class.model_name.human %></h1> 
3: 
4: <p> 
5: <strong><%= model_class.human_attribute_name(:title) %>:</strong><br> 

如果我把渲染離開該頁面使用不同的模板的具體行動

def view 
    render :layout => 'single' 
    @movie = Movie.find(params[:id]) 
    respond_to do |format| 
    format.html # show.html.erb 
    format.json { render json: @movie } 
end 
end 

將加載得很好。

回答

2

您渲染得太早。試試這個:

format.html { render :layout => 'single' } 

或者對於更具擴展性的方法,請參閱this question and answer

0

不要在view方法的開頭調用render。最後調用它。

更新: 哦..在你的情況下,你應該叫它format.html { render ... }。抱歉。