0

この質問は私の以前の質問に似ています: 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'

どうすればこれを達成できますか?これを行うために必要な手順は何ですか? 誰かが光を当てることができますか?

次の質問は、select とテキスト領域の値が (バインディング) を指す場所は?

4

0 に答える 0