Book Image

Node.js By Example

Book Image

Node.js By Example

Overview of this book

Table of Contents (18 chapters)
Node.js By Example
Credits
About the Author
About the Reviewers
www.PacktPub.com
Preface
Index

Adding a form to create pages


Every user in our social network should be able to browse and create pages. This is a completely new functionality. So, we will need a new route and controller.

  1. Let's start by updating frontend/js/app.js, as follows:

    .add('pages', function() {
      if(userModel.isLogged()) {
        var p = new Pages();
        showPage(p);
      } else {
        Router.navigate('login');
      }    
    })
    .add(function() {
      Router.navigate('home');
    })
  2. Just above the default handler, we will register a route that creates an instance of a new controller called Pages. We will make sure that the visitor is logged in before seeing the page. In the same file, at the top, we will add var Pages = require('./controllers/Pages');.

  3. Let's dive into the controllers/Page.js file and see how you can bootstrap the controller:

    module.exports = Ractive.extend({
      template: require('../../tpl/pages'),
      components: {
        navigation: require('../views/Navigation'),
        appfooter: require('../views/Footer')
      },
      data: { ...