diff --git a/aleksis/core/mixins.py b/aleksis/core/mixins.py index 3c3ed2238494133513c08633b1254cd83a947733..1b49ab042c8ed77254068e2f9f256201d649e6ea 100644 --- a/aleksis/core/mixins.py +++ b/aleksis/core/mixins.py @@ -2,6 +2,8 @@ from datetime import datetime from typing import Any, Callable, Optional, Union from django.contrib.contenttypes.models import ContentType +from django.contrib.sites.managers import CurrentSiteManager +from django.contrib.sites.models import Site from django.db import models from django.db.models import QuerySet from django.forms.models import ModelFormMetaclass, ModelForm @@ -78,6 +80,10 @@ class ExtensibleModel(CRUDMixin): # Defines a material design icon associated with this type of model icon_ = "radio_button_unchecked" + site = models.ForeignKey(Site, on_delete=models.CASCADE) + objects = CurrentSiteManager() + objects_all_sites = models.Manager() + def get_absolute_url(self) -> str: """ Get the URL o a view representing this model instance """ pass diff --git a/aleksis/core/settings.py b/aleksis/core/settings.py index c97701ba58f3cd42d470870d2b85f6e4abba3dc3..b23b32f8cf080ce5390c2c3f7f095d7319eab445 100644 --- a/aleksis/core/settings.py +++ b/aleksis/core/settings.py @@ -114,6 +114,7 @@ MIDDLEWARE = [ "django.middleware.locale.LocaleMiddleware", "django.middleware.http.ConditionalGetMiddleware", "django_global_request.middleware.GlobalRequestMiddleware", + "django.contrib.sites.middleware.CurrentSiteMiddleware", "django.middleware.common.CommonMiddleware", "django.middleware.csrf.CsrfViewMiddleware", "django.contrib.auth.middleware.AuthenticationMiddleware",