2013-05-13 68 views
0

在我有一個動態創建關係的聲明一個問題:的Rails:插一個ActiveRecord關係宣言

has_many :revisions, dependent: :destroy, class_name: "#{class.name}::Revision" 

注意,class_name試圖插值class.name。不幸的是,Rails在這方面唾棄。它還濺射於:

has_many :revisions, dependent: :destroy, class_name: class.name+"::Revision" 

我猜想一定有辦法讓Rails的識別字符串處理的關係聲明的中間,但我不能確定如何做到這一點。

+1

您有什麼錯誤?你知道在這種情況下類是'Class',self是模型的類嗎? – juanpastas 2013-05-13 15:29:57

回答

1

嘗試用self.name

has_many :revisions, dependent: :destroy, class_name: "#{self.name}::Revision" 
+0

這個技巧。 – nullnullnull 2013-05-13 15:37:21