Cleaner separation between model and template