O'Reilly logo

RSpec Essentials by Mani Tadayon

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Step 3 – finishing the view

It's been a long chapter, but we are almost done! We now need to incorporate this API into our AngularJS controller and service. Actually, we only need a small addition to the service, a small change to the controller, and no changes at all to the view.

First, in our service static/js/todo_list.js, we'll need to add a method to handle toggleDone:

'use strict';

// define the model to handle the data
var TodoList = function ($http) {
  // ... same as before ...

  // the new method
  store.toggleDone = function(id) {
    return $http.post('/api/v1/todos/' + id + '/toggle_done').then(returnTodos);
  }

  return store;
};

In static/js/todo_list_controller.js, we'll change the $scope.toggleDone method to use this new TodoList.toggleDone

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required