Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ember.js/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ember.js 如何从两个不同的视图发送POST请求?_Ember.js_Ember Data - Fatal编程技术网

Ember.js 如何从两个不同的视图发送POST请求?

Ember.js 如何从两个不同的视图发送POST请求?,ember.js,ember-data,Ember.js,Ember Data,这个问题与我之前的问题相似:但有些事情已经改变了。现在我知道kudo是在服务器中建模的,并且具有以下字段: 价值观 评论 它属于一个用户。目前的实施情况如下: <a href="#" class="btn btn-primary" {{action "addKudo" user}}>add</a> Sks.ApplicationRoute = Ember.Route.extend events: addKudo: (user) ->

这个问题与我之前的问题相似:但有些事情已经改变了。现在我知道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!'
我怎样才能做到这一点?实现这一点的必要步骤是什么?有人能解释一下吗


下一个问题是:select和text area值应该指向哪里(绑定)?

我会使用类似于
transaction=this.get('store').transaction()的东西;createRecord(Sks.Kudo,{user\u id:user.get(“id”)});commit();事务=空我知道这是沿着这些路线的,但步骤是什么?我是否必须创建一个/荣誉路线,即使我不想转到另一个路线,而是从当前路线(用户,用户)创建一个帖子。那么应该有办法创建一个工藤对象,不是吗?我真的不知道如何连接这些点。:)您可以从任何控制器运行此代码,也很可能从任何路由运行此代码。我只是不知道
this.get('store').transaction()是否在那里工作。您可能需要将
替换为对路由控制器的调用。是的,没错:我使用Kudo记录创建事务并提交它会向/kudos发送请求-我不知道:)您还可以告诉我如何处理旧示例中的承诺(完成,失败)吗?对不起,我还没有处理承诺。
Sks.Kudo = DS.Model.extend
  user: DS.belongsTo 'Sks.User'
  value: DS.attr 'number'
  comment: DS.attr 'string'