|
18 | 18 | from django.db import models |
19 | 19 | from django.http import HttpRequest |
20 | 20 | from django.template.loader import render_to_string |
21 | | -from django.urls import URLResolver, get_resolver |
| 21 | +from django.urls import URLResolver |
| 22 | +from django.urls.resolvers import RegexPattern |
22 | 23 | from django.utils.encoding import force_str |
23 | 24 | from django.utils.translation import get_language, override as force_language |
24 | 25 |
|
@@ -58,7 +59,7 @@ def is_editable(content_obj: models.Model, request: HttpRequest) -> bool: |
58 | 59 |
|
59 | 60 | @cache |
60 | 61 | def get_admin_sites(): |
61 | | - resolver = get_resolver() |
| 62 | + resolver = URLResolver(RegexPattern(r"^/"), settings.ROOT_URLCONF) |
62 | 63 |
|
63 | 64 | def find_admin_sites(patterns): |
64 | 65 | for pattern in patterns: |
@@ -110,14 +111,14 @@ def replace_admin_for_models(pairs: tuple[type[models.Model], type], admin_site: |
110 | 111 | :param admin_site: AdminSite instance |
111 | 112 | """ |
112 | 113 | if admin_site is None: |
113 | | - admin_sites = get_admin_sites() or [admin.site] |
| 114 | + admin_sites = [admin.site] |
114 | 115 | else: |
115 | 116 | admin_sites = [admin_site] |
116 | 117 |
|
117 | 118 | for _admin in admin_sites: |
118 | 119 | for model, mixin in pairs: |
119 | 120 | try: |
120 | | - modeladmin = admin_site._registry[model] |
| 121 | + modeladmin = _admin._registry[model] |
121 | 122 | except KeyError: |
122 | 123 | continue |
123 | 124 | _replace_admin_for_model(modeladmin, mixin, _admin) |
|
0 commit comments