2016-01-27 69 views
0

的Ba被支架產生I類創建這樣的:呼叫導軌

rails generate scaffold Ba src:string descr:string title:string 

我有視圖home.html.erb 有我有

<%= render 'layouts/bas' %> 

我由_bas.html.erb文件並把它放在在佈局文件夾中。它有這樣的代碼:

<% Ba.find_each do |ba| %> *CODE* <% end %> 

它運作良好。 但我想把我的find方法放在控制器中,因爲它可能比找到所有的都要大。 所以在我StaticPagesController我創建

def bas 
    @bas = Ba.find_each 
end 

,但我得到了錯誤的BAS是nill。 我的控制器代碼

def home 
    end 

    def help 
    end 
    def about 
    end 
    def contact 
    end 

回答

0

您可以只分配@bas在相應的控制器動作,這將是鑑於

可如果你真的需要調用一個方法從視圖控制器 - 使用helper_method

helper_method :bas 
def bas 
    #code... 
end 
+0

我在我的問題中告訴我,我在靜態頁面控制器中定義了方法,它給了我一個錯誤。所以如果我定義這個幫助器方法如何從視圖中調用它? – user2950593

+0

@ user2950593重點是在宣佈它是一個幫手,所以它可以從視圖 – Vasfed

+0

我叫我得到它=)謝謝) – user2950593