任何在Grape&Grape实体上工作的人都遇到了问题。 db:Mongoid 我有两个模型 1.用户 2.答案
每个用户都具有package_type:1
或2
或3
并且每个答案在数组中都有包类型,但具有单个值。
喜欢[1]
或[2]
或[3]
。
我想发送那些具有package_type == users.package_type的答案作为答案。
user_entity:
expose :answers, as: :profile_info, using: API::V1::Entities::Answer
answer_entity:
module API
module V1
module Entities
class Answer < Grape::Entity
expose :answer
expose :question
expose :package_type
end
end
end
end
答案 0 :(得分:0)
您可以根据关系进行过滤
class User
has_many :answers, -> { where({answers: {package_type: self.package_type}}) }
end
或来自实体
expose :profile_info do |user, _options|
API::V1::Entities::Answer.represent(user.answers.where({answers: {package_type: user.package_type}}))
end