2015-09-22 62 views
1

我在嘗試讓belongser/hasMany與關係時發現燼和帆好起來時遇到了問題。Ember和Sails創建/保存關係(屬於/ HasMany)

我有一個簡單的表格:

<form {{action 'addMessage' on='submit'}}> 
<div class="form-group"> 
    <label for='name'>Title</label> 
    {{input value=title class="form-control" required="required"}} 
</div> 

<div class="form-group"> 
    <label for='location'>User</label> 
    {{input value=user class="form-control" required="required" value=1}}</div> 

<p> 
    <button class="btn btn-primary btn-block" type="submit">Create Message</button> 
</p> 

而且用行動

actions: { 
addMessage: function() { 

    var newMessage = this.store.createRecord('message', { 
    title: this.get('title'), 
    user: this.get('user') 
    }); 
    newMessage.save().then(function() { 
    }, function(error) { 
    console.warn('Save Failed.', error); 
    }); 
}, 

我只是路過串控制器,和值相匹配的用戶ID 。當我查看傳遞的內容時,標題很好,但用戶標識爲空。

我正在使用sails的餘燼藍圖,所以它應該工作,但認爲我可能做錯了什麼。

我在這裏上傳的示例代碼,如果有人可以看看https://github.com/jimmyjamieson/ember-sails-example

回答

2

在您的用戶輸入是說value=1我認爲正在改變控制器編寫財產。

所以不是

{{input value=user class="form-control" required="required" value=1}}

嘗試

{{input value=user class="form-control" required="required"}}

+0

沒有任何區別。如果我通過title:this.get('user'),在create方法中我得到NULL。 動作: 動作:{ addMessage:function(){ var self = this; var user = this.get('user'); var newMessage = this.store.createRecord('message',{ title:this.get('title'), }); newMessage.set('user',user); 。 返回newMessage.save(),然後(函數(ID){ 的console.log( 「消息添加的」 + ID + 「與用戶」 +用戶); },函數(誤差){ console.warn( '保存失敗',錯誤); }); }, –

+0

來自該addMessage動作的控制檯消息是: 消息添加了 with user1。 它不保存sails中的關係 –