0

im trying to add some methods inside some includes with as_json in rails, but the second includes with method doesnt shows on the json. this is the code

            format.json { render :json => { :projects => @projects.as_json(:include => [
            :retail, 
            :property => {:methods => :name}, 
            :user => {:methods => [:name, :address] } ] ) } }

and this is the json generated:

{"projects":[{"comment":null,"contractor":1,"created_at":"2013-10-17T16:57:36Z","id":5,"property_id":3,"retail_id":1,"updated_at":"2013-10-17T16:57:36Z","user_id":2,"retail":{"address":null,"created_at":"2013-10-16T22:29:38Z","id":1,"name":"asdasdsa","phone":"6677969224","property_id":null,"social_reason_id":null,"updated_at":"2013-10-17T17:18:09Z","web":"www.boxie.io"},"property":{"city":"Culiacan","colony":"Fracc Los Sauces","coordinates":"(24.7802016, -107.34894730000002)","country_id":1,"created_at":"2013-10-17T00:56:32Z","external_number":null,"id":3,"internal_number":2848,"population":null,"state_id":4,"street":"Alame\u00f1a","updated_at":"2013-10-17T00:56:32Z","zipcode":8028,"name":"Calle Alame\u00f1a,  Fracc Los Sauces, 8028, Culiacan, Campeche Mexico"}}]}

as you can see the user information doesn't appear on the json.

Thank you

4

1 回答 1

0

您没有正确包装它们,您的第二个和第三个子关联应该是哈希值。

@projects.as_json(:include => [
  :retail, 
  { :property => {:methods => :name } }, 
  { :user => {:methods => [:name, :address] } } 
]
于 2013-10-17T19:49:14.600 回答