diff --git a/stave/models.py b/stave/models.py
index 6e3bcda..2c78af4 100644
--- a/stave/models.py
+++ b/stave/models.py
@@ -294,6 +294,13 @@ class Subscription(models.Model):
League, related_name="subscribers", on_delete=models.CASCADE
)
+ class Meta:
+ constraints = [
+ models.UniqueConstraint(
+ fields=["user", "league"], name="unique_subscription"
+ )
+ ]
+
class LeagueTemplate(models.Model):
id = models.UUIDField(primary_key=True, default=uuid.uuid4, editable=False)
diff --git a/stave/settings/base.py b/stave/settings/base.py
index 7f6a3cd..6a8c4d2 100644
--- a/stave/settings/base.py
+++ b/stave/settings/base.py
@@ -52,6 +52,7 @@
"django.contrib.sessions",
"django.contrib.messages",
"django.contrib.staticfiles",
+ "django_htmx",
"allauth",
"allauth.account",
"allauth.mfa",
@@ -77,6 +78,7 @@
"django.contrib.messages.middleware.MessageMiddleware",
"django.middleware.clickjacking.XFrameOptionsMiddleware",
"allauth.account.middleware.AccountMiddleware",
+ "django_htmx.middleware.HtmxMiddleware",
]
# Authentication
diff --git a/stave/templates/base.html b/stave/templates/base.html
index 7981579..7962bd0 100644
--- a/stave/templates/base.html
+++ b/stave/templates/base.html
@@ -1,3 +1,4 @@
+{% load django_htmx %}
{% load static %}
{% load meta %}
@@ -12,12 +13,13 @@
{% block title %}Stave{% endblock %}
+ {% htmx_script %}
{% include 'meta/meta.html' %}
{% block resources %}{% endblock %}
{% block extra_head %}
{% endblock extra_head %}
-
+