diff --git a/djangoldp/models.py b/djangoldp/models.py
index 66b5b17c796b09d5a3afa0273e1480159814b47d..c1d0c1a9d54fb50716c38e47b752e5669d94f430 100644
--- a/djangoldp/models.py
+++ b/djangoldp/models.py
@@ -29,7 +29,8 @@ class Model(models.Model):
 
     @classmethod
     def resource_id(cls, instance):
-        return "{}{}".format(cls.container_id(instance), getattr(instance, cls.slug_field(instance)))
+        r_id = "{}{}".format(cls.container_id(instance), getattr(instance, cls.slug_field(instance)))
+        return cls.__clean_path(r_id)
 
     @classmethod
     def slug_field(cls, instance):
diff --git a/djangoldp/tests/tests_ldp_model.py b/djangoldp/tests/tests_ldp_model.py
index 3e1da6a715f946324d464945551ff42ce2a38f82..14217f94a0dc1985f0ee4ea8d71f64a43caa51e7 100644
--- a/djangoldp/tests/tests_ldp_model.py
+++ b/djangoldp/tests/tests_ldp_model.py
@@ -11,18 +11,18 @@ class LDPModelTest(TestCase):
     def test_class_not_inheriting_ldp_model(self):
         dummy = Dummy.objects.create(some="text")
         self.assertEquals("/dummys/", Model.container_id(dummy))
-        self.assertEquals("/dummys/{}".format(dummy.slug), Model.resource_id(dummy))
+        self.assertEquals("/dummys/{}/".format(dummy.slug), Model.resource_id(dummy))
 
     def test_class_inheriting_ldp_model(self):
         dummy = LDPDummy.objects.create(some="text")
         self.assertEquals("/ldpdummys/", dummy.get_container_id())
-        self.assertEquals("/ldpdummys/{}".format(dummy.pk), dummy.get_absolute_url())
+        self.assertEquals("/ldpdummys/{}/".format(dummy.pk), dummy.get_absolute_url())
         self.assertEquals("/ldpdummys/", Model.container_id(dummy))
-        self.assertEquals("/ldpdummys/{}".format(dummy.pk), Model.resource_id(dummy))
+        self.assertEquals("/ldpdummys/{}/".format(dummy.pk), Model.resource_id(dummy))
 
     def test_from_resolve_id(self):
         saved_instance = Dummy.objects.create(some="text", slug="someid")
-        result = Model.resolve_id("/dummys/{}".format(saved_instance.slug))
+        result = Model.resolve_id("/dummys/{}/".format(saved_instance.slug))
         self.assertEquals(saved_instance, result)
 
     def test_resolve_container(self):
@@ -33,6 +33,6 @@ class LDPModelTest(TestCase):
         from django.urls import get_resolver
         dummy = LDPDummy.objects.create(some="text")
         view_name = '{}-list'.format(dummy._meta.object_name.lower())
-        path = '/{}{}'.format(get_resolver().reverse_dict[view_name][0][0][0], dummy.pk)
+        path = '/{}{}/'.format(get_resolver().reverse_dict[view_name][0][0][0], dummy.pk)
 
         self.assertEquals(path, dummy.get_absolute_url())
diff --git a/djangoldp/tests/tests_update.py b/djangoldp/tests/tests_update.py
index 9d19ea9189fa5587153deb8f12063ddb17ff750f..0dbba92de51e48317b49df8044584b8021ddc848 100644
--- a/djangoldp/tests/tests_update.py
+++ b/djangoldp/tests/tests_update.py
@@ -215,17 +215,17 @@ class Update(TestCase):
                 }
             },
             {
-                '@id': "https://happy-dev.fr/threads/{}".format(thread.pk),
+                '@id': "https://happy-dev.fr/threads/{}/".format(thread.pk),
                 "author_user": {
                     '@id': "https://happy-dev.fr/users/{}/".format(user1.pk)
                 },
                 'description': "Thread 1 UP",
                 'message_set': {
-                    "@id": "https://happy-dev.fr/threads/{}/message_set".format(thread.pk)
+                    "@id": "https://happy-dev.fr/threads/{}/message_set/".format(thread.pk)
                 }
             },
             {
-                '@id': "https://happy-dev.fr/threads/{}/message_set".format(thread.pk),
+                '@id': "https://happy-dev.fr/threads/{}/message_set/".format(thread.pk),
                 "ldp:contains": [
                     {"@id": "https://happy-dev.fr/messages/{}/".format(message1.pk)},
                     {"@id": "https://happy-dev.fr/messages/{}/".format(message2.pk)},