Rails 3.0.4中json渲染关系模型的奇怪问题

时间:2011-03-03 12:10:11

标签: ruby-on-rails ruby json activerecord relationship

我通过one_to_many建立了关系:虽然关系:

  has_one :todays_order, :through => :patient_orders, :source => :daily_order ,:conditions => ["order_for_date = ?", Date.today]

但是当我想在控制器中渲染它时:

    respond_with(@daily_order = Patient.find(params[:patient_id]).todays_order)

我会得到以下回复:

  

{ “marked_for_destruction”=>假,    “changed_attributes”=> {},    “属性”=>     {“additional_information”=>“....”,“id”=>“594369222”},    “只读”=>假,    的 “错误”=> {},    “previously_changed”=> {},    “破坏”=>假,    “attributes_cache”=> {},    “new_record”=>假}

但输出应该是这样的:

  

{“additional_information”=>“....”,“id”=>“594369222”}

这里有什么问题?

P.S。:您可以找到完整的控制器和型号:http://pastebin.com/VSbvesTn

1 个答案:

答案 0 :(得分:0)

通过不渲染patient.todays_order“关系”来解决问题,而不是渲染AR查询的结果。 所以我认为你不能直接在rails中呈现一个关系对象。