diff --git a/CHANGELOG.rst b/CHANGELOG.rst
index 90541bc3ce046d672e6042648e0998421c8218b3..5a8c03cda00b7b6853e29a4503d0ed4344a37da1 100644
--- a/CHANGELOG.rst
+++ b/CHANGELOG.rst
@@ -43,6 +43,7 @@ Fixed
 * Progress page didn't show error message on failure.
 * Dynamic routes were not removed/hid when the respective object registering it was deleted.
 * Django messages were not displayed in Vue frontend.
+* Links to data check objects did not work properly.
 
 `3.0b3`_ - 2023-03-19
 ---------------------
diff --git a/aleksis/core/templates/core/data_check/list.html b/aleksis/core/templates/core/data_check/list.html
index b192dcdc1623a05fa3ad7b3568b4b8bdc3622abf..00b0ceb3a9eefdb473b6fe97a2d2d693aee59b61 100644
--- a/aleksis/core/templates/core/data_check/list.html
+++ b/aleksis/core/templates/core/data_check/list.html
@@ -2,6 +2,7 @@
 
 {% extends "core/base.html" %}
 {% load data_helpers %}
+{% load html_helpers %}
 
 {% load i18n %}
 {% load render_table from django_tables2 %}
@@ -59,9 +60,11 @@
                 <td>{{ result.related_object }}</td>
                 <td>{{ result.related_check.problem_name }}</td>
                 <td>
-                  <a class="btn-flat waves-effect waves-light" href="{{ result.related_object.get_absolute_url }}">
+		  {% if result.related_object.get_absolute_url %}
+                  <a class="btn-flat waves-effect waves-light" href="{{ result.related_object.get_absolute_url|remove_prefix:"/django/" }}" target="_blank">
                     {% trans "Show object" %}
                   </a>
+		  {% endif %}
                 </td>
                 <td>
                   {% for option_name, option in result.related_check.solve_options.items %}
diff --git a/aleksis/core/templatetags/html_helpers.py b/aleksis/core/templatetags/html_helpers.py
index 8ca5be151d2edc39bf6787e9e51eabb3350714a0..98608a084574994400bffe46c50f944b52296e24 100644
--- a/aleksis/core/templatetags/html_helpers.py
+++ b/aleksis/core/templatetags/html_helpers.py
@@ -1,5 +1,6 @@
 import random
 import string
+from urllib.parse import urlparse
 
 from django import template
 from django.shortcuts import reverse
@@ -28,6 +29,24 @@ def add_class_to_el(value: str, arg: str) -> str:
     return str(soup)
 
 
+@register.filter
+def remove_prefix(value: str, prefix: str) -> str:
+    """Remove prefix of a url.
+
+    :Example:
+
+    .. code-block::
+
+        {{ object.get_absolute_url|remove_prefix: "/django/" }}
+    """
+    url = urlparse(value)
+
+    if url.path.startswith(prefix):
+        url = url._replace(path=url.path[len(prefix) :])
+
+    return url.geturl()
+
+
 @register.simple_tag
 def generate_random_id(prefix: str, length: int = 10) -> str:
     """Generate a random ID for templates.