1 Commits

Author SHA1 Message Date
codex_a
95abbdc0ac fix: update existing default site in seed command instead of hardcoding 127.0.0.1
Wagtail initialises the default site with hostname 'localhost'. The previous
get_or_create on '127.0.0.1' left the localhost site intact (still pointing
to the Welcome page), so browsers got the wrong root page.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-02-28 20:30:22 +00:00
3 changed files with 10 additions and 15 deletions

View File

@@ -116,16 +116,17 @@ class Command(BaseCommand):
legal_index.add_child(instance=privacy)
privacy.save_revision().publish()
# Point every existing Site at the real home page and mark exactly one
# as the default. Wagtail's initial migration creates a localhost:80
# site that matches incoming requests by hostname before the
# is_default_site fallback is ever reached, so we must update *all*
# sites, not just the is_default_site one.
Site.objects.all().update(root_page=home, site_name="No Hype AI", is_default_site=False)
site = Site.objects.first()
# Update the existing default site (whatever hostname Wagtail created it with)
# rather than creating a new 127.0.0.1 entry that leaves localhost pointing
# to the Welcome page.
site = Site.objects.filter(is_default_site=True).first()
if site is None:
site = Site(hostname="localhost", port=80)
site.root_page = home
site.is_default_site = True
site.site_name = "No Hype AI"
site.save()
# Remove any other conflicting default-site entries left by test fixtures
Site.objects.exclude(pk=site.pk).filter(is_default_site=True).update(is_default_site=False)
self.stdout.write(self.style.SUCCESS("Seeded E2E content."))

View File

@@ -4,13 +4,6 @@ DEBUG = True
INTERNAL_IPS = ["127.0.0.1"]
# In dev, drop WhiteNoise from middleware and use plain static file storage.
# WhiteNoise serves from STATIC_ROOT which is empty without collectstatic,
# so it intercepts every /static/ request and returns nothing.
# Django's runserver handles static files natively when DEBUG=True.
MIDDLEWARE = [m for m in MIDDLEWARE if m != "whitenoise.middleware.WhiteNoiseMiddleware"]
STATICFILES_STORAGE = "django.contrib.staticfiles.storage.StaticFilesStorage"
try:
import debug_toolbar # noqa: F401

View File

@@ -4,10 +4,10 @@ services:
working_dir: /app
command: >
sh -c "python manage.py migrate --noinput &&
python manage.py seed_e2e_content &&
python manage.py runserver 0.0.0.0:8000"
volumes:
- .:/app
- /opt/playwright-tools/browsers:/opt/playwright-tools/browsers:ro
ports:
- "8035:8000"
environment:
@@ -22,6 +22,7 @@ services:
EMAIL_BACKEND: django.core.mail.backends.console.EmailBackend
DEFAULT_FROM_EMAIL: hello@nohypeai.com
NEWSLETTER_PROVIDER: buttondown
PLAYWRIGHT_BROWSERS_PATH: /opt/playwright-tools/browsers
depends_on:
db:
condition: service_healthy