2013-08-18 43 views
3

在軌初始化文件模塊類名稱轉換爲符號,對於配置可以接受,像這樣的符號活動對象的行:如何在軌

config.objects += [ :room, :hotel, ..etc ] 

這些符號代表了我想配置類。

我的問題是,我使用了一個定義了一個'Blogit :: Post'模塊類的rails引擎,我想配置它。我如何將它作爲符號添加到配置數組中?

+0

什麼使用'config.objects'? –

+0

這是一個紅寶石初始化文件: 'SocialStream.setup do | config | ... config.objects + = [:room,:hotel,:blogpost] ... end' – Anchor

回答

5

您可以通過添加下劃線或轉發控制串的分類駱駝案件和命名空間斜槓你config.objects。

斜槓歸類到一個命名空間:

:"blogit/post".classify #=> Blogit::Post 

下劃線歸類到一個駝峯:

:blogit_post.classify #=> BlogitPost 

所以你的情況,解決辦法是:

config.objects += [ :room, :hotel, :"blogit/post", ..etc ] 

或者,如果您使用ruby 2.0,則可以使用更簡潔的數組符號實例化方式:

config.objects += %i(room hotel blogit/post) 
+0

完美,謝謝 – Anchor

-2

嘗試了這一點,這應該工作

:"Blogit::Post" 
+0

嘿,感謝您的回覆。當我嘗試這個,我得到一個: 「動態分配常數(SyntaxError錯誤) @add_holder_Blogit :: POST_ID =我」 錯誤 – Anchor

+0

@Anchor另一種方式是先分配喜歡這個崗位= Blogit ::帖子,然後使用:郵政符號。 –