diff --git a/app/views/shared/_project.html.haml b/app/views/shared/_project.html.haml
index d9ae0459862a924c1c472f3184707facc875f448..8746970c239a269c3bc8723da4b8ff78be887959 100644
--- a/app/views/shared/_project.html.haml
+++ b/app/views/shared/_project.html.haml
@@ -1,20 +1,21 @@
-= link_to project_path(project), class: dom_class(project) do
-  - if avatar
-    .dash-project-avatar
-      = project_icon(project, alt: '', class: 'avatar project-avatar s40')
-  .dash-project-access-icon
-    = visibility_level_icon(project.visibility_level)
-  %span.str-truncated
-    %span.namespace-name
-      - if project.namespace
-        = project.namespace.human_name
-        \/
-    %span.project-name.filter-title
-      = project.name
-  - if stars
-    %span.pull-right.light
-      %i.fa.fa-star
-      = project.star_count
-  - else
-    %span.arrow
-      %i.fa.fa-angle-right
+= cache [project, controller.controller_name, controller.action_name] do
+  = link_to project_path(project), class: dom_class(project) do
+    - if avatar
+      .dash-project-avatar
+        = project_icon(project, alt: '', class: 'avatar project-avatar s40')
+    .dash-project-access-icon
+      = visibility_level_icon(project.visibility_level)
+    %span.str-truncated
+      %span.namespace-name
+        - if project.namespace
+          = project.namespace.human_name
+          \/
+      %span.project-name.filter-title
+        = project.name
+    - if stars
+      %span.pull-right.light
+        %i.fa.fa-star
+        = project.star_count
+    - else
+      %span.arrow
+        %i.fa.fa-angle-right