Ember.js 通过RESTAPI提交表单

Ember.js 通过RESTAPI提交表单,ember.js,Ember.js,我是新的余烬,我正试图通过提交表格来创建一个记录。这是我迄今为止编写的代码: App.CharactersNewRoute = Ember.Route.extend({ model: function() { return this.store.createRecord('character', {name: '', race: ''}); } }); <form {{action "createCharacter" on="submit"}}>

我是新的余烬,我正试图通过提交表格来创建一个记录。这是我迄今为止编写的代码:

App.CharactersNewRoute = Ember.Route.extend({
    model: function() {
        return this.store.createRecord('character', {name: '', race: ''});
    }
});

<form {{action "createCharacter" on="submit"}}>

        <div class="form-group">    
            <label>Name</label>
            {{input value=characterName class="form-control"}}
        </div>

        <div class="form-group">    
            <label>Race</label>
            {{input id=characterRace class="form-control"}}
        </div>

        {{#link-to 'characters'}}<button class="btn btn-default">Back</button>{{/link-to}}

        <button class="btn btn-default" type="submit">Create</button>
    </form>

App.CharactersNewController = Ember.ObjectController.extend({

actions: {

    createCharacter: function() {
        var name = this.get('characterName'),
                race = this.get('characterRace');

        if (!name || !race) { return false }

        // create new character
        var character = this.store.createRecord('character', {
            name: name,
            race: race
        });

        this.set('characterName', '');
        this.set('characterRace', '');

        character.save();

    }
}
})
App.CharactersNewRoute=Ember.Route.extend({
模型:函数(){
返回此.store.createRecord('character',{name:'',race:'});
}
});
名称
{{input value=characterName class=“表单控制”}
比赛
{{input id=characterRace class=“form control”}
{{{#链接到“字符”}返回{{/链接到}
创造
App.CharactersNewController=Ember.ObjectController.extend({
行动:{
createCharacter:function(){
var name=this.get('characterName'),
race=this.get('characterRace');
如果(!name | |!race){return false}
//创造新角色
var character=this.store.createRecord('character'{
姓名:姓名,,
种族:种族
});
此.set('characterName','');
此.set('characterRace','');
save()字符;
}
}
})
现在,代码在控制器中的
var character=this.store.createRecord
行停止,但控制台中没有出现错误


谢谢

您正在路线中创建记录,因此无需在控制器中创建第二条记录。您可以将路由留空或在控制器中使用:
this.get('model').set('name',characterName)
。除此之外我不知道。您是否创建了用户模型?定义一个商店?还有两件事。Ember data是一个很好的扩展,您可以通过浏览器获得它来帮助调试,
Ember.Logger.log(您曾经希望将它记录到控制台中)
是一个很好的控制台调试命令。嘿@Tarlen,您得到问题的答案了吗,如果是,请在这里回答。它也会帮助其他人。像我一样:)!