2013-05-01 48 views
0

我有兩個表,listsideas他們是在相互關係。Ruby on Rails:使用關聯的ID重定向?

名單

has_many :ideas 

想法

belongs_to :lists 

我有一個文本字段在我的列表頁面(我的想法),localhost:3000/lists/1下,當我點擊創建理念,它把我帶到想法/ 1,或者想法/ 2等等,並且這全部與列表ID 1相關聯。我想要做的是動態地重定向回localhost:3000/lists/1

我有這樣的:

redirect_to(:controller => 'lists', :action => 'show') 

我的想法控制器內。

但這重定向給我的錯誤,因爲它尋求與ID =#列出,因爲目前正在與思想控制生成的ID和我的列表頁面相關的IT

如何重定向到其相關聯的列表ID? (在這個例子中,應該回去列出/ 1

感謝

回答

2

兩種方式重定向回:

#Method 1 
redirect_to @idea.list 

#Method 2 
redirect_to :back 

所有應工作你的情況

+0

有趣哦...。有沒有什麼方法可以理解它是如何工作的呢?還是這種「魔術」,我總是讀到RoR – hellomello 2013-05-01 06:03:56

+0

@andrewliu,它們不是魔術,所有這些都記錄在api中:http://api.rubyonrails.org/classes/ActionController /Redirecting.html第一種方法是關於「記錄 - URL將通過調用生成用url_for選項,它將引用該記錄的指定URL。「第二個:「:後退 - 回到發出請求的頁面。」 – 2013-05-01 06:14:37