2014-05-10 380 views
0

說我有一個項目控制器從另一個控制器調用一個實例變量

@project實例變量

,我也有一個project_updates控制器我project_updates /視圖/節目我可以叫

在@project變量?例如,我有我的@project實例

在project_updates類別顯示視圖我呼籲:

<% @project.categories.each do |cat| %> 
    <li><%= cat.name %></li> 
<% end %> 

或者我需要從不同的控制器帶來的實例變量到一些其他的控制器辦法?

+0

您應該在'project_updates'控制器中定義'@ project',以便在show view頁面中使用它。 – Pavan

回答

3

我可能過分簡化了這一點,但儘管您可能認爲在另一個控制器中有一個變量,但這可能並非如此。

當請求進入並被路由到控制器時,將創建一個控制器實例。如果那個其他控制器不是一些如何實例化爲請求的一部分,那麼你認爲這個變量並不存在。

然而模型確實存在(至少以數據庫形式)。所以基本上我認爲你應該試圖通過從你的模型中提取一些數據來獲得在你的project_updates控制器中創建的@project變量。

如何在其他控制器中創建@project變量?很有可能你會在這個控制器中使用相同的方法來創建它,那麼它可以用於你的視圖。

相關問題