title: Durandal subnavigation with Parameters
body: <p>once again a Durandal question ^^ I'd like to make a subnavigation menu.
  The subpage is called per url</p>
  
  <pre><code>&lt;a class="btn btn-primary" data-bind="attr: { href: '#customer/'+ id }"&gt;Open&lt;/a&gt;
  </code></pre>
  
  <p>The shell.js routes this to the <strong>customers/shell2.js</strong> (the child router) that you can see here:</p>
  
  <pre><code>define(['plugins/router', 'knockout', 'utility', 'logger', 'datacontext'], function (router, ko, utility, logger, datacontext) {
  var displayName = 'Customer';
  var cId = ko.observable(0);
  
  var childRouter = router.createChildRouter()
      .makeRelative({ moduleId: 'viewmodels/customers' , route: 'customer/:id/'});
  
  return {
      router: childRouter,
      cId: cId,
      displayName: displayName,
      activate: activate
  };
  
  function activate() {
      cId(parseInt(router.activeInstruction().params[0]));
      childRouter.map([
          {
              route: ['', 'overview'],
              moduleId: 'overview',
              name: 'Overview',
              hash: '#customer/' + cId() + '/overview',
              nav: false,
              settings: {}
          },
          {
              route: 'sessions',
              moduleId: 'sessions',
              name: 'Sitzungen',
              hash: '#customer/' + cId() + '/sessions',
              nav: false,
              settings: {}
          }
      ]).buildNavigationModel();
  }
  });
  </code></pre>
  
  <p>In short: I want the link to be like #customer/17/overview with 17 being the route parameter for calling the subnavigation.</p>
  
  <p>When i call the url #customer/17, the content of the route is displayed, but not the subnavigation. Moreover the urls #customer/17/overview and #customer/17/session don't work...
  Has someone a working example where the subnav is built with parameters? </p>
  
  <p>EDIT:
  <strong>shell.js</strong></p>
  
  <pre><code>define(['plugins/router', 'knockout' ,'session', 'toastr','logger', 'durandal/app']
  , function (router, ko, session, toastr, logger, app) {
  
  var routes= [
      {   route: '',
          moduleId: 'login',
          name: 'Login',
          hash: '',
          nav: false,
          settings: {}
      },
      {   route: 'dashboard',
          moduleId: 'dashboard/dashboard',
          name: 'Dashboard',
          hash: '#dashboard',
          nav: true,
          settings: {}
      },
      {   route: 'customers',
          moduleId: 'customers/customers',
          name: 'Customers',
          hash: '#customers',
          nav: true,
          settings: {}
      },
      {   route: 'customer/:id',
          moduleId: 'customers/shell2',
          name: 'customer',
          hash: '',
          nav: false,
          settings: {}
      },
      {   route: 'logout',
          moduleId: 'logout',
          name: 'Logout',
          hash: '',
          nav: true,
          settings: {}
      }];
  
  return {
      activate: activate,
      router: router,
      session: session,
      app: app
  };
  
  function activate() {
      router.makeRelative({moduleId:'viewmodels'})
          .map(routes)
          .buildNavigationModel() // Finds all nav routes and makes them ready
          .mapUnknownRoutes('notfound', 'notfound');
  
      router.activate();
  }
  });
  </code></pre>