I'm using Django with Wagtail CMS. I'm trying to give the user a message on registering an account and when you cancel the account. At this moment this both work, but only when when I have the settings DEBUG = True, if I set DEBUG to false (as it has to be in production) the messages no longer come up.
My Django settings:
INSTALLED_APPS = [
'home',
'search',
'user',
'blog',
'rss',
'rosetta',
#'wagtailorderable',
'wagtail.contrib.forms',
'wagtail.contrib.redirects',
'wagtail.contrib.styleguide',
'wagtail.embeds',
'wagtail.sites',
'wagtail.users',
'wagtail.snippets',
'wagtail.documents',
'wagtail.images',
'wagtail.search',
'wagtail.admin',
'wagtail',
#'wagtail.images.panels',
'wagtailfontawesome',
'wagtail_color_panel',
'modelcluster',
'taggit',
'allauth',
'allauth.account',
'allauth.socialaccount',
'allauth.socialaccount.providers.facebook',
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'django.contrib.flatpages',
'django.contrib.sites',
"django.contrib.sitemaps",
'wagtail.contrib.modeladmin', # Don't repeat if it's there already
'sorl.thumbnail',
]
MIDDLEWARE = [
'django.contrib.sessions.middleware.SessionMiddleware',
'django.middleware.common.CommonMiddleware',
'django.middleware.csrf.CsrfViewMiddleware',
'django.contrib.auth.middleware.AuthenticationMiddleware',
'django.contrib.messages.middleware.MessageMiddleware',
'django.middleware.clickjacking.XFrameOptionsMiddleware',
'django.middleware.security.SecurityMiddleware',
'django.middleware.locale.LocaleMiddleware',
'wagtail.contrib.redirects.middleware.RedirectMiddleware',
]
DEBUG = True
Here is how I call the message when the user registers, I'm using a signal from allauth:
from django.utils.translation import gettext_lazy as _
from django.dispatch import receiver
from django.contrib import messages
from allauth.account.signals import user_signed_up
class User(AbstractUser):
class Meta:
db_table = 'auth_user'
@receiver(user_signed_up)
def user_signed_up_callback(sender, request, user, **kwargs):
return messages.success(request, _('Thank you for creating an account'))
I have already tried several fixes found online including:
changing MESSAGE_LEVEL to an integer, and to different levels of message (info, success, etc.)
changing MESSAGE_STORAGE to cookies or sessions storage
But the problem remains that the message comes ONLY when DEBUG = True