2015-06-14 57 views
0

我有小問題。我有兩種方法,索引和創建。當我嘗試檢查randomUserId中的內容時,我看到'nill',但在查看中一切正確。爲什麼可變返回無

def index 
    @randomUserId = rand(1..30) 
    end 

    def create 
    puts "RANDOM: " 
    puts @randomUserId 

    end 
+2

你如何檢查'randomUserId'中的內容?如果你正在創建一個新的實例,你需要先調用'index' .. – Buddy

+1

這是一個類嗎?您是否在創建之前調用索引? – lcguida

+2

你用'ruby-on-rails'標記了你的問題,所以我想你實際上正在嘗試創建一個控制器,用'index'和'create'作爲動作。你似乎不瞭解MVC的基礎知識,所以我建議你先閱讀一些文檔。 – Nax

回答

0

createindex是兩種非常不同的方法。在一個Controller他們不被召集在一起。你只打一個或另一個。根據您提供的代碼,您只需在index操作中設置值@randomUserId ....不在create操作中。您無法調用用於其他操作的變量 - 您將其設置爲不再存在的值,並且將(正確)返回nil

如果您想在創建操作中使用@randomUserId的值,則必須在create操作中再次設置它,或者以某種方式通過參數傳遞它。

如果前者只是複製表示@randomUserId =rand(1..30)的行。

如果是後者,那麼在我們可以幫助您之前,您需要告訴我們更多關於您想要做什麼,您的意見等等。