diff --git a/basetheme_bootstrap/user_preferences_utils.py b/basetheme_bootstrap/user_preferences_utils.py
index 7e0b1db4de4c03f53a551b19e708037bc46d9c84..8d4f22c5b83a9702183e468e747fc3fefd2d19b9 100644
--- a/basetheme_bootstrap/user_preferences_utils.py
+++ b/basetheme_bootstrap/user_preferences_utils.py
@@ -88,21 +88,19 @@ class UserPreferencesAbstractModelWithoutUser(models.Model):
             self._meta.verbose_name.title(),
         )
 
-    @classmethod
-    def get_allowed_fields(cls):
-        if cls.preferences_groups is not None:
-            for group, fields in cls.preferences_groups.items():
+    def get_allowed_fields(self):
+        if self.preferences_groups is not None:
+            for group, fields in self.preferences_groups.items():
                 for f in fields:
                     yield f
             return
-        for field_name in [f.name for f in cls._meta.get_fields()]:
+        for field_name in [f.name for f in self._meta.get_fields()]:
             if field_name == "id" or field_name == "pk" or field_name == "user":
                 continue
             yield field_name
 
-    @classmethod
     @property
-    def preferences_groups(cls):
+    def preferences_groups(self):
         return None
 
     @property