diff --git a/adminlte2_pdq/decorators.py b/adminlte2_pdq/decorators.py
index d7ad6cef9b5486e60578d8be5e2d32a40bb5fbdb..1d17927f6830d7d804b213ef61bd886e07354851 100644
--- a/adminlte2_pdq/decorators.py
+++ b/adminlte2_pdq/decorators.py
@@ -77,8 +77,8 @@ def allow_anonymous_access(function=None):
         "allow_anonymous_access": True,
         "login_required": False,
         "allow_without_permissions": False,
-        "one_of_permissions": None,
-        "full_permissions": None,
+        # "one_of_permissions": None,
+        # "full_permissions": None,
     }
 
     def decorator(function):
@@ -129,8 +129,8 @@ def login_required(function=None, redirect_field_name="next", login_url=None):
         "allow_anonymous_access": False,
         "login_required": True,
         "allow_without_permissions": False,
-        "one_of_permissions": None,
-        "full_permissions": None,
+        # "one_of_permissions": None,
+        # "full_permissions": None,
     }
 
     def decorator(function):
@@ -168,8 +168,8 @@ def allow_without_permissions(function=None, redirect_field_name="next", login_u
         "allow_anonymous_access": False,
         "login_required": True,
         "allow_without_permissions": True,
-        "one_of_permissions": None,
-        "full_permissions": None,
+        # "one_of_permissions": None,
+        # "full_permissions": None,
     }
 
     def decorator(function):
@@ -217,14 +217,16 @@ def permission_required_one(permission, login_url=None, raise_exception=False):
         "allow_anonymous_access": False,
         "login_required": True,
         "allow_without_permissions": False,
-        "one_of_permissions": permissions,
-        "full_permissions": None,
+        # "one_of_permissions": permissions,
+        # "full_permissions": None,
     }
 
     def decorator(function):
 
         # Save values to view fetch function for middleware handling +  potential debugging.
         function.admin_pdq_data = admin_pdq_data
+        function.permission_required_one = permissions  # Must have one, if any.
+        function.permission_required = None  # Must have all, if any. Same as Django.
 
         @wraps(function)
         @_one_of_permission_required(permission, login_url, raise_exception)
@@ -235,6 +237,8 @@ def permission_required_one(permission, login_url=None, raise_exception=False):
 
             # Save values to fully qualified view for middleware handling +  potential debugging.
             function_view.admin_pdq_data = admin_pdq_data
+            function_view.permission_required_one = permissions  # Must have one, if any.
+            function_view.permission_required = None  # Must have all, if any. Same as Django.
 
             return function_view
 
@@ -265,14 +269,16 @@ def permission_required(permission, login_url=None, raise_exception=False):
         "allow_anonymous_access": False,
         "login_required": True,
         "allow_without_permissions": False,
-        "one_of_permissions": None,
-        "full_permissions": permissions,
+        # "one_of_permissions": None,
+        # "full_permissions": permissions,
     }
 
     def decorator(function):
 
         # Save values to view fetch function for middleware handling + potential debugging.
         function.admin_pdq_data = admin_pdq_data
+        function.permission_required_one = None  # Must have one, if any.
+        function.permission_required = permissions  # Must have all, if any. Same as Django.
 
         @wraps(function)
         @django_permission_required(permission, login_url, raise_exception)
@@ -283,6 +289,8 @@ def permission_required(permission, login_url=None, raise_exception=False):
 
             # Save values to fully qualified view for middleware handling +  potential debugging.
             function_view.admin_pdq_data = admin_pdq_data
+            function_view.permission_required_one = None  # Must have one, if any.
+            function_view.permission_required = permissions  # Must have all, if any. Same as Django.
 
             return function_view
 
diff --git a/adminlte2_pdq/middleware.py b/adminlte2_pdq/middleware.py
index 20aa70766dfafbdedd64a6b347d31af32459d22d..e48906819b2b4715fe5cce2457261ae3cd64c91c 100644
--- a/adminlte2_pdq/middleware.py
+++ b/adminlte2_pdq/middleware.py
@@ -447,9 +447,9 @@ class AuthMiddleware:
             if view_class:
                 # Is class-based view.
 
-                # If class inheriting from AdminLte mixins, then ensure data is up-to-date and fully initialized.
-                if hasattr(view_class, "_update_admin_pdq_data"):
-                    view_class._update_admin_pdq_data()
+                # # If class inheriting from AdminLte mixins, then ensure data is up-to-date and fully initialized.
+                # if hasattr(view_class, "_update_admin_pdq_data"):
+                #     view_class._update_admin_pdq_data()
 
                 # Get AdminLte class data dict.
                 admin_pdq_data = getattr(view_class, "admin_pdq_data", {})
@@ -523,8 +523,12 @@ class AuthMiddleware:
                     data_dict["allow_anonymous_access"] = admin_pdq_data.get("allow_anonymous_access", False)
                     data_dict["login_required"] = admin_pdq_data.get("login_required", False)
                     data_dict["allow_without_permissions"] = admin_pdq_data.get("allow_without_permissions", False)
-                    data_dict["one_of_permissions"] = admin_pdq_data.get("one_of_permissions", None)
-                    data_dict["full_permissions"] = admin_pdq_data.get("full_permissions", None)
+
+                    permission_required_one_value = getattr(resolver.func, "permission_required_one", None)
+                    permission_required_value = getattr(resolver.func, "permission_required", None)
+
+                    data_dict["one_of_permissions"] = permission_required_one_value
+                    data_dict["full_permissions"] = permission_required_value
 
         except Http404:
             # Request was 404, not valid page.
diff --git a/adminlte2_pdq/mixins.py b/adminlte2_pdq/mixins.py
index be3a83610c56ecd9f4dc216aedf0ea8766d94544..d5ee674f7f359390f84a493d8c2a11b9848c5c4f 100644
--- a/adminlte2_pdq/mixins.py
+++ b/adminlte2_pdq/mixins.py
@@ -61,8 +61,8 @@ class AllowAnonymousAccessMixin(BaseAdminLteMixin):
         "allow_anonymous_access": True,
         "login_required": False,
         "allow_without_permissions": False,
-        "one_of_permissions": None,
-        "full_permissions": None,
+        # "one_of_permissions": None,
+        # "full_permissions": None,
     }
 
     subclasses = []
@@ -85,8 +85,8 @@ class LoginRequiredMixin(DjangoLoginRequiredMixin, BaseAdminLteMixin):
         "allow_anonymous_access": False,
         "login_required": True,
         "allow_without_permissions": False,
-        "one_of_permissions": None,
-        "full_permissions": None,
+        # "one_of_permissions": None,
+        # "full_permissions": None,
     }
 
     subclasses = []
@@ -112,8 +112,8 @@ class AllowWithoutPermissionsMixin(DjangoLoginRequiredMixin, BaseAdminLteMixin):
         "allow_anonymous_access": False,
         "login_required": True,
         "allow_without_permissions": True,
-        "one_of_permissions": None,
-        "full_permissions": None,
+        # "one_of_permissions": None,
+        # "full_permissions": None,
     }
 
     subclasses = []
@@ -140,8 +140,8 @@ class PermissionRequiredMixin(DjangoPermissionRequiredMixin, BaseAdminLteMixin):
         "allow_anonymous_access": False,
         "login_required": True,
         "allow_without_permissions": False,
-        "one_of_permissions": permission_required_one,
-        "full_permissions": permission_required,
+        # "one_of_permissions": permission_required_one,
+        # "full_permissions": permission_required,
     }
 
     subclasses = []
diff --git a/adminlte2_pdq/templatetags/sidebar_menu.py b/adminlte2_pdq/templatetags/sidebar_menu.py
index 7fb5bd359d1d0e52778bdf745ae2f8b5c7282835..61348047a381e5429d0897a1252e5131ec7591cb 100644
--- a/adminlte2_pdq/templatetags/sidebar_menu.py
+++ b/adminlte2_pdq/templatetags/sidebar_menu.py
@@ -232,17 +232,33 @@ def get_permissions_from_view(view):
     if view_class:
         # Is class-based view.
 
-        # If class inheriting from AdminLte mixins, then ensure data is up-to-date and fully initialized.
-        if hasattr(view_class, "_update_admin_pdq_data"):
-            view_class._update_admin_pdq_data()
+        # # If class inheriting from AdminLte mixins, then ensure data is up-to-date and fully initialized.
+        # if hasattr(view_class, "_update_admin_pdq_data"):
+        #     view_class._update_admin_pdq_data()
 
         # Get AdminLte class data dict.
         admin_pdq_data = getattr(view_class, "admin_pdq_data", {})
+
+        print("    view_class: {0}".format(view_class))
+        print("    view.permission_required_one: {0}".format(getattr(view_class, "permission_required_one", None)))
+        print("    view.permission_required: {0}".format(getattr(view_class, "permission_required", None)))
+        print("")
+
+        permission_required_one_value = getattr(view_class, "permission_required_one", None)
+        permission_required_value = getattr(view_class, "permission_required", None)
+
     else:
         # Is function-based view. Get AdminLte function data dict.
         admin_pdq_data = getattr(view.func, "admin_pdq_data", {})
 
-    print("    view_class: {0}".format(view_class))
+        print("    view_class: {0}".format(view.func))
+        print("    view.permission_required_one: {0}".format(getattr(view.func, "permission_required_one", None)))
+        print("    view.permission_required: {0}".format(getattr(view.func, "permission_required", None)))
+        print("")
+
+        permission_required_one_value = getattr(view.func, "permission_required_one", None)
+        permission_required_value = getattr(view.func, "permission_required", None)
+
     print("    pdq_data: {0}".format(admin_pdq_data))
     print("")
 
@@ -250,8 +266,15 @@ def get_permissions_from_view(view):
     view_data["allow_anonymous_access"] = admin_pdq_data.get("allow_anonymous_access", None)
     view_data["login_required"] = admin_pdq_data.get("login_required", None)
     view_data["allow_without_permissions"] = admin_pdq_data.get("allow_without_permissions", None)
-    view_data["one_of_permissions"] = admin_pdq_data.get("one_of_permissions", [])
-    view_data["full_permissions"] = admin_pdq_data.get("full_permissions", [])
+
+    # # Because we seem unable to get the "updated" class attributes,
+    # # and only have access to the original literal class-level values,
+    # # we seem unable to rely on the data dict for this.
+    # permission_required_one_value = getattr(view_class, "permission_required_one", None)
+    # permission_required_value = getattr(view_class, "permission_required", None)
+
+    view_data["one_of_permissions"] = permission_required_one_value
+    view_data["full_permissions"] = permission_required_value
 
     return view_data
 
@@ -288,6 +311,7 @@ def get_permissions_from_node(node):
     node_one_of_permissions = node.get("one_of_permissions", None)
     node_full_permissions = node.get("permissions", None)
 
+    print("    Node Results:")
     print("    node_allow_anonymous_access: {0}".format(node_allow_anonymous_access))
     print("    node_login_required: {0}".format(node_login_required))
     print("    node_allow_without_permissions: {0}".format(node_allow_without_permissions))
@@ -368,6 +392,7 @@ def get_permissions_from_node(node):
         if isinstance(view_full_permissions, str):
             view_full_permissions = (view_full_permissions,)
 
+    print("    View Results:")
     print("    view_allow_anonymous_access: {0}".format(view_allow_anonymous_access))
     print("    view_login_required: {0}".format(view_login_required))
     print("    view_allow_without_permissions: {0}".format(view_allow_without_permissions))
@@ -439,6 +464,7 @@ def get_permissions_from_node(node):
         # Fall back to view value, as long as node allow_without_permissions is not set.
         full_permissions = view_full_permissions or []
 
+    print("    Final Results:")
     print("    allow_anonymous_access: {0}".format(allow_anonymous_access))
     print("    login_required: {0}".format(login_required))
     print("    allow_without_permissions: {0}".format(allow_without_permissions))
diff --git a/tests/django_adminlte2_pdq/tests/test_decorators/test_isolated_decorators.py b/tests/django_adminlte2_pdq/tests/test_decorators/test_isolated_decorators.py
index 36c7dec207fffad744f6d3af48051eb54d8d39b2..fc08a1ca3d37e9cd90b402b4a738c78307a93c19 100644
--- a/tests/django_adminlte2_pdq/tests/test_decorators/test_isolated_decorators.py
+++ b/tests/django_adminlte2_pdq/tests/test_decorators/test_isolated_decorators.py
@@ -180,7 +180,7 @@ class TestIsolatedDecorators(TestCase):
 
         self.assertEqual(response.status_code, 200)
         self.assertEqual(
-            a_view.admin_pdq_data["one_of_permissions"],
+            a_view.permission_required_one,
             ("auth.add_foo",),
         )
 
@@ -197,7 +197,7 @@ class TestIsolatedDecorators(TestCase):
 
         self.assertEqual(response.status_code, 200)
         self.assertEqual(
-            a_view.admin_pdq_data["one_of_permissions"],
+            a_view.permission_required_one,
             ("auth.add_foo", "auth.change_foo"),
         )
 
@@ -214,7 +214,7 @@ class TestIsolatedDecorators(TestCase):
 
         self.assertEqual(response.status_code, 200)
         self.assertEqual(
-            a_view.admin_pdq_data["one_of_permissions"],
+            a_view.permission_required_one,
             ("auth.add_foo", "auth.change_foo"),
         )
 
@@ -231,7 +231,7 @@ class TestIsolatedDecorators(TestCase):
 
         self.assertEqual(response.status_code, 302)
         self.assertEqual(
-            a_view.admin_pdq_data["one_of_permissions"],
+            a_view.permission_required_one,
             ("auth.add_foo", "auth.change_foo"),
         )
 
@@ -250,7 +250,7 @@ class TestIsolatedDecorators(TestCase):
 
             self.assertEqual(response.status_code, 302)
             self.assertEqual(
-                a_view.admin_pdq_data["one_of_permissions"],
+                a_view.permission_required_one,
                 ("auth.add_foo", "auth.change_foo"),
             )
 
@@ -271,7 +271,7 @@ class TestIsolatedDecorators(TestCase):
 
         self.assertEqual(response.status_code, 200)
         self.assertEqual(
-            a_view.admin_pdq_data["full_permissions"],
+            a_view.permission_required,
             ("auth.add_foo",),
         )
 
@@ -288,7 +288,7 @@ class TestIsolatedDecorators(TestCase):
 
         self.assertEqual(response.status_code, 200)
         self.assertEqual(
-            a_view.admin_pdq_data["full_permissions"],
+            a_view.permission_required,
             ("auth.add_foo", "auth.change_foo"),
         )
 
@@ -305,7 +305,7 @@ class TestIsolatedDecorators(TestCase):
 
         self.assertEqual(response.status_code, 302)
         self.assertEqual(
-            a_view.admin_pdq_data["full_permissions"],
+            a_view.permission_required,
             ("auth.add_foo", "auth.change_foo"),
         )
 
@@ -322,7 +322,7 @@ class TestIsolatedDecorators(TestCase):
 
         self.assertEqual(response.status_code, 302)
         self.assertEqual(
-            a_view.admin_pdq_data["full_permissions"],
+            a_view.permission_required,
             ("auth.add_foo", "auth.change_foo"),
         )
 
@@ -341,7 +341,7 @@ class TestIsolatedDecorators(TestCase):
 
             self.assertEqual(response.status_code, 302)
             self.assertEqual(
-                a_view.admin_pdq_data["full_permissions"],
+                a_view.permission_required,
                 ("auth.add_foo", "auth.change_foo"),
             )