Ember.js array as model's property

xamenrax picture xamenrax · Feb 14, 2013 · Viewed 19.7k times · Source

Cheers! I have some model, and one attribute of it is an array, but for some reasons (I use mongoDB on the server and it's problem with embedded models and ember-data) I can't do somthing like this:

App.Foo = DS.Model.extend({
  ...
  numbers: DS.hasMany('App.Bar')
)};

App.Bar = DS.Model.extend({
  ...
  number: DS.attr('number')
});

I need something like this:

App.Bar = DS.Model.extend({
  numbers: DS.attr('array')
});

But there is no array type of attributes in ember-data, how to be?

Answer

andy picture andy · Sep 29, 2014

I found that actually you can have array properties out of the box by just not specifying a type.

#coffeescript

AskuWhiteLabel.SomeModel = DS.Model.extend
    some_ids: DS.attr()

I'm using this, and when I do this

myModel.set('some_ids', [1,2,3])
myModel.save()

The payload to the server is indeed my array as is.