You can certainly implement multi-page websites within a single-page RIA. Ok, that sounds paradoxical. From the server side, it's rendering a single page, serving the source code. But within the client code, the Router object may render the page completely differently based on the route.
Edit / Addition:
Not sure if this is best, but here's how my app loads templates stored in separate html files within the app source code, e.g. myview.template = app.TemplateManager.fetch('grids/item');
templateManager: {
JST : {}, // hash table so not to load same template twice
fetch: function(path) {
url = "/app/templates" + path + ".html";
if (!this.JST[path]) {
$.ajax({ url: url, async: false }).then(function(contents) {
this.JST[path] = _.template(contents);
});
}
return this.JST[path];
}
});