Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Ember Data hasMany relationship empty result

I'm using:

  • ember-cli 0.2.7
  • ember-data 1.0.0-beta.18
  • ember 1.12.0

I'm not sure why but it seems that I can't retrieve the tags for my newsletter model.

I'm using ActiveModelAdapter:

import DS from 'ember-data';

export default DS.ActiveModelAdapter.extend({
  namespace: 'api/v1',
  host: 'http://localhost:3000'
});

newsletter.js

import DS from 'ember-data';

export default DS.Model.extend({
  title: DS.attr('string'),
  tags: DS.hasMany('tag')
});

tag.js

import DS from 'ember-data';

export default DS.Model.extend({
  name: DS.attr('string')
});

API response (rails backend using ActiveModelSerializer):

{
  "newsletters": [
    {
      "id": 1,
      "title": "Panel Weekly",
      "tag_ids": [
        1
      ]
    },
    {...}
  ],
  "tags": [
    {
      "id": 1,
      "name": "arts"
    },
    {...}
}

I don't know how to retrieve the list of tags for a newsletter. I tried this using the ember inspector and the console ($E containing the first newsletter):

>$E.get('tags.length')
0
>$E.get('tags')
Class {canonicalState: Array[0], store: Class, relationship: ember$data$lib$system$relationships$state$has$many$$ManyRelationship, record: Class, currentState: Array[0]…}
>$E.get('title')
"Panel Weekly"
like image 224
null Avatar asked Nov 10 '22 10:11

null


1 Answers

I reproduced your situation in a JSBin and it works fine:

http://emberjs.jsbin.com/yeboqe/3/edit?html,js,output

Your problem must be somewhere else.

like image 162
Andrey Mikhaylov - lolmaus Avatar answered Nov 14 '22 22:11

Andrey Mikhaylov - lolmaus