簡體   English   中英

從外部Rails引擎訪問模型

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM