diff --git a/tailbone/templates/master/view.mako b/tailbone/templates/master/view.mako
index d07e1cc9..94454bd9 100644
--- a/tailbone/templates/master/view.mako
+++ b/tailbone/templates/master/view.mako
@@ -72,8 +72,8 @@
% if master.has_rows and master.rows_downloadable_csv and request.has_perm('{}.row_results_csv'.format(permission_prefix)):
${h.link_to("Download row results as CSV", url('{}.row_results_csv'.format(route_prefix), uuid=instance.uuid))}
% endif
- % if master.has_rows and master.rows_downloadable_xlsx and request.has_perm('{}.row_results_xlsx'.format(permission_prefix)):
- ${h.link_to("Download row results as XLSX", url('{}.row_results_xlsx'.format(route_prefix), uuid=instance.uuid))}
+ % if master.has_rows and master.rows_downloadable_xlsx and master.has_perm('row_results_xlsx'):
+ ${h.link_to("Download row results as XLSX", master.get_action_url('row_results_xlsx', instance))}
% endif
%def>
diff --git a/tailbone/views/master.py b/tailbone/views/master.py
index 10bd5c26..827e5500 100644
--- a/tailbone/views/master.py
+++ b/tailbone/views/master.py
@@ -3868,7 +3868,7 @@ class MasterView(View):
if cls.has_rows and cls.rows_downloadable_xlsx:
config.add_tailbone_permission(permission_prefix, '{}.row_results_xlsx'.format(permission_prefix),
"Download {} results as XLSX".format(row_model_title))
- config.add_route('{}.row_results_xlsx'.format(route_prefix), '{}/{{uuid}}/rows-xlsx'.format(url_prefix))
+ config.add_route('{}.row_results_xlsx'.format(route_prefix), '{}/rows-xlsx'.format(instance_url_prefix))
config.add_view(cls, attr='row_results_xlsx', route_name='{}.row_results_xlsx'.format(route_prefix),
permission='{}.row_results_xlsx'.format(permission_prefix))