私はDepartment
と呼ばれるモンゴイドモデルと別のモデルUser
と呼ばれ、2つのモデルの間にはネイティブの関係はありません。私のアプリケーションの関係がどのように働くかによって、私はドキュメントIDをUserモデルに手動で格納します。この方法は、代わりにRubyの配列を返すためモンゴイドのクエリから構築されたRuby配列を実際のモンゴイドオブジェクトに変換するか、モンゴイドオブジェクトを返すように書き直しますか?
、私はRuby用のGrape
フレームワークを使用しています、そして、それはEntities
と呼ばれるMongoidオブジェクトの上に座ってフィルタシステムを持っており、それがmongoidクエリ応答オブジェクトをイマイチ何を拒否しますモンゴイドオブジェクト、私のフレームワークは私にエラーを与える。
モンゴイドオブジェクトを返すために私の関数を書き直す方法はありますか?またはMongoidオブジェクトの配列を1つのMongoidオブジェクトに変換できる方法がありますか?
私は信じ## inside Department Model
def self.user_can_access(user = nil)
if user != nil
departments = []
## department_access_keys are embedded documents belonging to a user
user.department_access_keys.each do |key|
departments << BACKBONE::Department.find(key.key)
end
departments ## => returns an array of Department Documents that a user has been granted access to
else
raise 'user was not defined'
end
end
はあなたに感謝します!なぜ私はブドウの実体が配列を受け入れないのか分かりませんが、これは私の問題を解決しました! – aronlmin