Skip to content

Commit f29c3fa

Browse files
committed
Fix Site model typing, enhance SITE_CACHE, and cleanup allowlist
Detailed changes: - Map Site fields (id, domain, name) to concrete types to fix DeferredAttribute errors. - Type SITE_CACHE as dict[int | str, Site] for better precision. - Add missing __str__ method to Site stub. - Remove resolved Site entries from stubtest allowlist.
1 parent afe4c8b commit f29c3fa

File tree

2 files changed

+5
-6
lines changed

2 files changed

+5
-6
lines changed

django-stubs/contrib/sites/models.pyi

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ from typing import Any, ClassVar
33
from django.db import models
44
from django.http.request import HttpRequest
55

6-
SITE_CACHE: Any
6+
SITE_CACHE: dict[int | str, Site]
77

88
class SiteManager(models.Manager[Site]):
99
def get_current(self, request: HttpRequest | None = ...) -> Site: ...
@@ -13,8 +13,10 @@ class SiteManager(models.Manager[Site]):
1313
class Site(models.Model):
1414
objects: ClassVar[SiteManager]
1515

16-
domain = models.CharField(max_length=100)
17-
name = models.CharField(max_length=50)
16+
id: int
17+
domain: str
18+
name: str
19+
1820
def natural_key(self) -> tuple[str]: ...
1921

2022
def clear_site_cache(sender: type[Site], **kwargs: Any) -> None: ...

scripts/stubtest/allowlist_todo.txt

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -106,10 +106,7 @@ django.contrib.sessions.models.Session.get_next_by_expire_date
106106
django.contrib.sessions.models.Session.get_previous_by_expire_date
107107
django.contrib.sessions.models.Session.session_data
108108
django.contrib.sessions.models.Session.session_key
109-
django.contrib.sites.models.Site.domain
110109
django.contrib.sites.models.Site.flatpage_set
111-
django.contrib.sites.models.Site.id
112-
django.contrib.sites.models.Site.name
113110
django.contrib.staticfiles.finders.DefaultStorageFinder.storage
114111
django.contrib.staticfiles.storage.staticfiles_storage
115112
django.core.cache.cache

0 commit comments

Comments
 (0)