mirror of
https://github.com/thecyberlearn/modern-django-starter.git
synced 2026-08-18 10:12:56 +00:00
Fix django_site relation error by adding Site configuration
- Add configure_site management command to create Django Site object - Configure site domain as dt.netcoptech.com during startup (like quantum-digital) - Update both compose files to run configure_site after migrations - This fixes the 'relation django_site does not exist' error on /accounts/login/ Django Allauth requires a Site object to work properly.
This commit is contained in:
parent
468710b900
commit
7a47ca4058
44
apps/core/management/commands/configure_site.py
Normal file
44
apps/core/management/commands/configure_site.py
Normal file
@ -0,0 +1,44 @@
|
||||
from django.core.management.base import BaseCommand
|
||||
from django.contrib.sites.models import Site
|
||||
from django.conf import settings
|
||||
|
||||
|
||||
class Command(BaseCommand):
|
||||
help = 'Configure Django Site for production domain'
|
||||
|
||||
def add_arguments(self, parser):
|
||||
parser.add_argument(
|
||||
'--domain',
|
||||
type=str,
|
||||
default='dt.netcoptech.com',
|
||||
help='Domain name for the site',
|
||||
)
|
||||
parser.add_argument(
|
||||
'--name',
|
||||
type=str,
|
||||
default='Django Template',
|
||||
help='Display name for the site',
|
||||
)
|
||||
|
||||
def handle(self, *args, **options):
|
||||
domain = options['domain']
|
||||
name = options['name']
|
||||
|
||||
# Get or create the default site (pk=1)
|
||||
site, created = Site.objects.get_or_create(pk=1)
|
||||
site.domain = domain
|
||||
site.name = name
|
||||
site.save()
|
||||
|
||||
if created:
|
||||
self.stdout.write(
|
||||
self.style.SUCCESS(f'✅ Created new site: {name} ({domain})')
|
||||
)
|
||||
else:
|
||||
self.stdout.write(
|
||||
self.style.SUCCESS(f'✅ Updated existing site: {name} ({domain})')
|
||||
)
|
||||
|
||||
self.stdout.write(
|
||||
self.style.SUCCESS('Site configuration completed successfully!')
|
||||
)
|
||||
@ -17,5 +17,6 @@ services:
|
||||
sh -c "python manage.py migrate &&
|
||||
python manage.py create_groups &&
|
||||
python manage.py setup_social_apps &&
|
||||
python manage.py configure_site --domain=dt.netcoptech.com --name='Django Template' &&
|
||||
python manage.py collectstatic --noinput &&
|
||||
gunicorn --bind 0.0.0.0:8000 --workers 3 --timeout 120 django_project.wsgi:application"
|
||||
|
||||
@ -39,5 +39,6 @@ networks:
|
||||
sh -c "python manage.py migrate &&
|
||||
python manage.py create_groups &&
|
||||
python manage.py setup_social_apps &&
|
||||
python manage.py configure_site --domain=dt.netcoptech.com --name='Django Template' &&
|
||||
python manage.py collectstatic --noinput &&
|
||||
gunicorn --bind 0.0.0.0:8000 --workers 3 --timeout 120 django_project.wsgi:application"
|
||||
|
||||
Loading…
Reference in New Issue
Block a user