这个问题与我之前的问题类似:如何在 Ember 中与 Rails 进行通信,但有些事情发生了变化。现在我知道 kudo 是在服务器中建模的,并且具有以下字段:
- 价值
- 评论
它属于一个用户。当前的实现如下:
<a href="#" class="btn btn-primary" {{action "addKudo" user}}>add</a>
Sks.ApplicationRoute = Ember.Route.extend
events:
addKudo: (user) ->
console.log event
self = @
token = $('meta[name="csrf-token"]').attr 'content'
currentUserCon = @controllerFor 'currentUser'
kudosLeft = currentUserCon.get 'kudosLeft'
showFlash = (type, message) ->
$("#flash")
.addClass(type)
.empty()
.append(message)
.show()
.fadeIn()
.delay(2000)
.fadeOut 'slow'
$.post("/kudos", user_id: user.get("id"), authenticity_token: token)
.done((data, status) =>
if kudosLeft > 0
currentUserCon.decrementKudos 1
showFlash 'alert-success', 'You\'ve added a kudo!'
else
showFlash 'alert-error', 'There\'re no kudos left!'
)
.fail (data, status) ->
showFlash 'alert-error', 'Oops! An error occured!'
但是现在,我想使用 Ember-Data 并向/kudos发送一个 POST 请求(并且我想摆脱 jQuery ajax 部分)。请看一看:
具有以下模型:
Sks.Kudo = DS.Model.extend
user: DS.belongsTo 'Sks.User'
value: DS.attr 'number'
comment: DS.attr 'string'
我怎样才能做到这一点?执行此操作的必要步骤是什么?任何人都可以解释一下吗?
下一个问题是:选择和文本区域值应该指向哪里(绑定)?