[英]Accessing models from outside rails engine
嘿,我正在創建Rails 3引擎,並嘗試在安裝引擎的應用程序中訪問模型。
module MyEngine
class UsersController < ApplicationController
def index
@users = User.all
end
如果我撥打以下電話,則會出現錯誤:
找不到表'my_engine_users'-如果模型位於引擎內部,它將自動尋找將存在的命名空間版本,但在這種情況下,它是在使用引擎的應用程序中定義的。
如果我調用:: User.all而不是User.all,那么一切正常 ,但是看起來有些奇怪。 這是有效的紅寶石還是有一種更好的方法來獲取該物體?
因此,如果我的問題正確無誤,那么您的引擎中就有一個模型,如下所示:
module MyEngine
class User
end
end
如果上面的假設是正確的,則可以通過模型中的 table_name=
設置表名稱
module MyEngine
class User
self.table_name = 'users'
end
end
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.