[英]Array in serializer with multiple serializer rails
我在處理后得到數組。
gem 'active_model_serializers'
現在我想使用serializer
以json格式發送數據。
但是當我調用序列化程序時,它不會因為Array而得到對象。
控制器 -
def index
question = user.questions.available
answer = user.where(:answer => params[:ans])
render :json => {:qust => question, :each_serializer => QuestionSerializer,
:ans => answer, :each_serializer => AnswerSerializer}
end
question_serializer.rb
class QuestionSerializer < ActiveModel::Serializer
attributes :id, :question, :type
end
answer_serializer.rb
class AnswerSerializer < ActiveModel::Serializer
attributes :id, :answer, :date
def date
object.date = "..."
end
end
嘗試這個:
render json: {
qust: ActiveModel::ArraySerializer.new(question, each_serializer: QuestionSerializer),
ans: ActiveModel::ArraySerializer.new(answer, each_serializer: AnswerSerializer),
}
附言:
answer = user.where(:answer => params[:ans])
看起來很糟糕 或者像這樣:
options = {each_serializer: QuestionSerializer}
user_questions = user.questions.available
questions = ActiveModelSerializers::SerializableResource.new(user_questions, options)
render json: {
qust: questions.as_json
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.