code: function(collection, key, fn) {
        var views = this.getViews(collection);
        // if a custom renameKey function is passed, try using it
        if (typeof fn === 'function') {
          key = fn(key);
        }
        if (views.hasOwnProperty(key)) {
          return views[key];
        }
        // try again with the default renameKey function
        fn = this.option('renameKey');
        var name;
        if (typeof fn === 'function') {
          name = fn(key);
        }
        if (name && name !== key && views.hasOwnProperty(name)) {
          return views[name];
        }
        return null;
      }
docs: Get a specific template from the specified collection.
  
  ```js
  app.getView('pages', 'a.hbs', function(fp) {
  return path.basename(fp);
  });
  ```
  
  @param {String} `collectionName` Collection name, like `pages`
  @param {String} `key` Template name
  @param {Function} `fn` Optionally pass a `renameKey` function
  @return {Object}
  @api public