1

Mirage をインストールしてサーバーを偽造しようとした ember アプリケーションを試しています。RestAdapter を使用していますが、モデルが応答からデータを取得していません。

アダプター/application.js

import DS from 'ember-data';

export default DS.RESTAdapter.extend({
});

contact.js (モデル)

import DS from 'ember-data';
import ContactModel from 'c360-app/models/contactsmodel';
export default ContactModel.extend({
    contactname: DS.attr(''),
    groupid: DS.attr(''),
    email: DS.attr(''),
    contactnumber: DS.attr('')
});

all.js (ルート)

import ContactRoute from 'c360-app/routes/contactsroute';
export default ContactRoute.extend({
    model: function() {
        return this.store.findAll('contacts');
    }
});

フィクスチャ/contacts.js

export default [  
    {
        contactname: 'Anusha Swaminathan',
        groupid: '12345',
        email: 'xyz@gmail.com',
        contactnumber: '+91 12345',
        isFavourite: true,
        isIncomplete: false,
        isActive: true,
        hasAccess: true
    }, {
        contactname: 'Sriram Swaminathan',
        groupid: '12345',
        email: 'xyz@gmail.com',
        contactnumber: '+91 12345',
        isFavourite: true,
        isIncomplete: false,
        isActive: true,
        hasAccess: true
    }, {
        contactname: 'Bhuvaneswari Swaminathan',
        groupid: '12345',
        email: 'xyz@gmail.com',
        contactnumber: '+91 12345',
        isFavourite: false,
        isIncomplete: false,
        isActive: true,
        hasAccess: true
    }
];

シナリオ/default.js

export default function( server ) {
   server.loadFixtures();
}

Config.js (ミラージュ)

export default function() {
  this.get('/contacts', function(db){
    return {contacts: db.contacts};
  });
}

contact-listing.hbs

    <table class = "contacts-table-header">
        <tr>
            <th>Contact Name</th>
            <th>Group ID </th>
            <th>Email Address</th>
            <th>Contact Number</th> 
        </tr>
{{#each model as |contact|}}
        <tr>
            <td>{{contact.contactname}}</td>
            <td>{{contact.groupid}}</td>
            <td>{{contact.email}}</td>
            <td>{{contact.contactnumber}}</td>
        </tr>

{{/each}}
</table>

どこが間違っているのかわかりません。

ガイドをお願いします。前もって感謝します!!

4

1 に答える 1

0

all.js(ルート)では、 return this.store.findAll('contact'); で試すことができます。そして、contacts.js の代わりにモデル ファイル名を contact.js と言う

于 2016-03-21T10:05:47.357 に答える