将整数添加到Backbone模型属性

时间:2014-10-07 07:17:29

标签: ruby-on-rails

我试图允许在表单上单击一个按钮,其投票数为+ = 1。你认为我可以做一些像idea.set({“votes”:+ = 1})这样的事情,但似乎并不喜欢这样。我做了一个事件,听我点击我的upvote按钮,现在我被卡住了。有人可以帮忙吗?

    IdeaVoter.Views.IdeasIndex = Backbone.View.extend(

    template: HandlebarsTemplates['ideas/index'],
    initialize: function(){
    this.collection.on('reset',this.render, this)
    this.collection.on('add',this.render, this);
     },

   events: {
    "submit #new_idea ": "createIdea",
    "click #upvote": "upvote"
        },

  render: function(){
    $(this.el).html(this.template())
    this.collection.each(this.addIdea)
    this.collection.each(this.upvote)
    return this;
  },

  addIdea: function(idea){
    view = new IdeaVoter.Views.Idea({model: idea})
    $('#ideas').append(view.render().el)
  },

  upvote:function(idea){
    idea.save()
  }


});

1 个答案:

答案 0 :(得分:0)

我认为你正在寻找一个简单的

idea.set('votes', idea.get('votes') + 1);

您可能希望在模型中添加一个方法,以隐藏简单idea.upvote()之类的内容。