2013-08-02 49 views
1

所以我有兩個模型,稱它們爲AnimalAnimalComment。他們是這樣的:更新另一個模型的屬性軌跡

class AnimalComment < ActiveRecord::Base 
    attr_accessible :comment, :num 
end 

class Animal < ActiveRecord::Base 
    attr_ accessible :species, :comment 
end 

當過我創建Animal評論,我想我也該評論添加到我的AnimalComment型號的:comment領域。

我是如何工作的願景是我的意見,我animals/new網頁類型,當我點擊Submit註釋獲取的添加爲我的AnimalComment網頁中的一個元素,並顯示在那裏。

希望這是有道理的。有任何想法嗎?

+0

可以動物有多個評論? – Muntasim

+0

我的回答對你有幫助嗎?還是你需要別的幫助? – Powers

回答

4

我不確定在兩個地方存儲相同的數據是否有意義。也許這些模型應該是相關的(即,Animalhas_manyComments)。

在任何情況下,您的需求都可以通過回調來滿足。

class Animal < ActiveRecord::Base 
    attr_accessible :species, :comment 
    after_save :create_animal_comment 

    def create_animal_comment 
    AnimalComment.create(comment: self.comment) 
    end 
end 

after_save方法告訴Rails在每次創建Animal創紀錄的時間運行Animal#create_animal_comment方法。 self.comment參考Animal模型中的評論。

+0

謝謝。對不起,我花了這麼長時間才接受。 – DashControl

+0

語法錯誤:'attar_accessible'應該是'attr_accessible' – 0112

1

首先,創建關聯。然後只保存在AnimalComment表中的評論。在動物模型中使用delegate來訪問它,或通過關聯獲取它。

相關問題