I think there exists a bug in the ActiveRecord::Serialization. The example below takes an Active Record Campaign object and serializes it into JSON including its related sub_category object and its related subscriptions object. @campaign.to_json(:include=> {:sub_category => {:include => :subscriptions}}) This works perfect and returns: {"sub_category_id": 1, "name": "ready campaign", "updated_at": null, "thumbnail": null, "sub_category": {"name": "News Alerts", "subscriptions": [{"sub_category_id": 1, "updated_at": "2008/01/18 23:01:41 -0800", "timestamp_start": "2008/01/18 22:12:00 -0800", "id": 1, "timestamp_end": "2008/01/18 23:01:00 -0800", "subscriber_id": 1, "is_subscribed": true, "created_at": "2008/01/18 23:01:41 -0800"}], "updated_at": null, "long_text": null, "id": 1, "description": null, "category_id": 1, "picture": null, "created_at": null}, "body": "you should send this campaign now", "campaign_status_id": 3, "subject": "this campaign is ready", "notes": null, "id": 5, "billing_code": null, "valid_after": null, "ad_id_source": null, "created_at": "2007/08/24 16:15:16 -0700"} Adding another relationship on the same level of sub_category works too: @campaign.to_json(:include=> [:sub_category, :delivery_schedule]) However, If I want to include another object on the same level as sub_category, the serialization fails (see delivery_schedules on same level as sub_category): @campaign.to_json(:include=> [{:sub_category => {:include => :subscriptions}}, :delivery_schedule]) Returns this error: NoMethodError (You have a nil object when you didn''t expect it! The error occurred while evaluating nil.macro): /vendor/rails/activerecord/lib/active_record/serialization.rb: 55:in `add_includes'' /vendor/rails/activerecord/lib/active_record/serialization.rb: 54:in `each'' /vendor/rails/activerecord/lib/active_record/serialization.rb: 54:in `add_includes'' /vendor/rails/activerecord/lib/active_record/serialization.rb: 76:in `serializable_record'' /vendor/rails/activesupport/lib/active_support/core_ext/object/ misc.rb:28:in `returning'' /vendor/rails/activerecord/lib/active_record/serialization.rb: 74:in `serializable_record'' /vendor/rails/activerecord/lib/active_record/serializers/ json_serializer.rb:67:in `serialize'' /vendor/rails/activerecord/lib/active_record/serialization.rb: 91:in `to_s'' /vendor/rails/activerecord/lib/active_record/serializers/ json_serializer.rb:57:in `to_json'' Any ideas? --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to rubyonrails-talk-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk-unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en -~----------~----~----~----~------~----~------~--~---