Consistent Jinja tag conditions

This commit is contained in:
Bruno Alla 2023-04-04 22:50:08 +01:00
parent 466a9d3c24
commit 933d228607
No known key found for this signature in database
10 changed files with 24 additions and 24 deletions

View File

@ -315,12 +315,12 @@ ACCOUNT_ALLOW_REGISTRATION = env.bool("DJANGO_ACCOUNT_ALLOW_REGISTRATION", True)
ACCOUNT_AUTHENTICATION_METHOD = "{{cookiecutter.username_type}}" ACCOUNT_AUTHENTICATION_METHOD = "{{cookiecutter.username_type}}"
# https://django-allauth.readthedocs.io/en/latest/configuration.html # https://django-allauth.readthedocs.io/en/latest/configuration.html
ACCOUNT_EMAIL_REQUIRED = True ACCOUNT_EMAIL_REQUIRED = True
{% if cookiecutter.username_type == "email" -%} {%- if cookiecutter.username_type == "email" %}
# https://django-allauth.readthedocs.io/en/latest/configuration.html # https://django-allauth.readthedocs.io/en/latest/configuration.html
ACCOUNT_USERNAME_REQUIRED = False ACCOUNT_USERNAME_REQUIRED = False
# https://django-allauth.readthedocs.io/en/latest/configuration.html # https://django-allauth.readthedocs.io/en/latest/configuration.html
ACCOUNT_USER_MODEL_USERNAME_FIELD = None ACCOUNT_USER_MODEL_USERNAME_FIELD = None
{% endif -%} {%- endif %}
# https://django-allauth.readthedocs.io/en/latest/configuration.html # https://django-allauth.readthedocs.io/en/latest/configuration.html
ACCOUNT_EMAIL_VERIFICATION = "mandatory" ACCOUNT_EMAIL_VERIFICATION = "mandatory"
# https://django-allauth.readthedocs.io/en/latest/configuration.html # https://django-allauth.readthedocs.io/en/latest/configuration.html

View File

@ -13,7 +13,7 @@ class UserAdmin(auth_admin.UserAdmin):
form = UserAdminChangeForm form = UserAdminChangeForm
add_form = UserAdminCreationForm add_form = UserAdminCreationForm
fieldsets = ( fieldsets = (
{%- if cookiecutter.username_type == "email" -%} {%- if cookiecutter.username_type == "email" %}
(None, {"fields": ("email", "password")}), (None, {"fields": ("email", "password")}),
(_("Personal info"), {"fields": ("name",)}), (_("Personal info"), {"fields": ("name",)}),
{%- else %} {%- else %}
@ -36,7 +36,7 @@ class UserAdmin(auth_admin.UserAdmin):
) )
list_display = ["{{cookiecutter.username_type}}", "name", "is_superuser"] list_display = ["{{cookiecutter.username_type}}", "name", "is_superuser"]
search_fields = ["name"] search_fields = ["name"]
{%- if cookiecutter.username_type == "email" -%} {%- if cookiecutter.username_type == "email" %}
ordering = ["id"] ordering = ["id"]
add_fieldsets = ( add_fieldsets = (
( (

View File

@ -129,7 +129,7 @@ class Migration(migrations.Migration):
"abstract": False, "abstract": False,
}, },
managers=[ managers=[
{% if cookiecutter.username_type == "email" -%} {%- if cookiecutter.username_type == "email" %}
("objects", {{cookiecutter.project_slug}}.users.models.UserManager()), ("objects", {{cookiecutter.project_slug}}.users.models.UserManager()),
{%- else %} {%- else %}
("objects", django.contrib.auth.models.UserManager()), ("objects", django.contrib.auth.models.UserManager()),

View File

@ -1,14 +1,14 @@
{%- if cookiecutter.username_type == "email" -%} {%- if cookiecutter.username_type == "email" %}
from django.contrib.auth.hashers import make_password from django.contrib.auth.hashers import make_password
from django.contrib.auth.models import AbstractUser, UserManager as DjangoUserManager from django.contrib.auth.models import AbstractUser, UserManager as DjangoUserManager
{%- else -%} {%- else %}
from django.contrib.auth.models import AbstractUser from django.contrib.auth.models import AbstractUser
{%- endif %} {%- endif %}
from django.db.models import CharField{%- if cookiecutter.username_type == "email" %}, EmailField{% endif %} from django.db.models import CharField{% if cookiecutter.username_type == "email" %}, EmailField{% endif %}
from django.urls import reverse from django.urls import reverse
from django.utils.translation import gettext_lazy as _ from django.utils.translation import gettext_lazy as _
{%- if cookiecutter.username_type == "email" -%} {%- if cookiecutter.username_type == "email" %}
class UserManager(DjangoUserManager): class UserManager(DjangoUserManager):
def _create_user(self, email, password, **extra_fields): def _create_user(self, email, password, **extra_fields):
""" """
@ -49,14 +49,14 @@ class User(AbstractUser):
#: First and last name do not cover name patterns around the globe #: First and last name do not cover name patterns around the globe
name = CharField(_("Name of User"), blank=True, max_length=255) name = CharField(_("Name of User"), blank=True, max_length=255)
{%- if cookiecutter.username_type == "email" -%} {%- if cookiecutter.username_type == "email" %}
username = None # type: ignore username = None # type: ignore
email = EmailField(_("email address"), unique=True) email = EmailField(_("email address"), unique=True)
{%- endif %} {%- endif %}
first_name = None # type: ignore first_name = None # type: ignore
last_name = None # type: ignore last_name = None # type: ignore
{%- if cookiecutter.username_type == "email" -%} {%- if cookiecutter.username_type == "email" %}
USERNAME_FIELD = "email" USERNAME_FIELD = "email"
REQUIRED_FIELDS = [] REQUIRED_FIELDS = []
@ -70,7 +70,7 @@ class User(AbstractUser):
str: URL for user detail. str: URL for user detail.
""" """
{%- if cookiecutter.username_type == "email" -%} {%- if cookiecutter.username_type == "email" %}
return reverse("users:detail", kwargs={"id": self.id}) return reverse("users:detail", kwargs={"id": self.id})
{%- else %} {%- else %}
return reverse("users:detail", kwargs={"username": self.username}) return reverse("users:detail", kwargs={"username": self.username})

View File

@ -22,7 +22,7 @@ class TestUserAdmin:
response = admin_client.post( response = admin_client.post(
url, url,
data={ data={
{%- if cookiecutter.username_type == "email" -%} {%- if cookiecutter.username_type == "email" %}
"email": "new-admin@example.com", "email": "new-admin@example.com",
{%- else %} {%- else %}
"username": "test", "username": "test",
@ -32,14 +32,14 @@ class TestUserAdmin:
}, },
) )
assert response.status_code == 302 assert response.status_code == 302
{%- if cookiecutter.username_type == "email" -%} {%- if cookiecutter.username_type == "email" %}
assert User.objects.filter(email="new-admin@example.com").exists() assert User.objects.filter(email="new-admin@example.com").exists()
{%- else %} {%- else %}
assert User.objects.filter(username="test").exists() assert User.objects.filter(username="test").exists()
{%- endif %} {%- endif %}
def test_view_user(self, admin_client): def test_view_user(self, admin_client):
{%- if cookiecutter.username_type == "email" -%} {%- if cookiecutter.username_type == "email" %}
user = User.objects.get(email="admin@example.com") user = User.objects.get(email="admin@example.com")
{%- else %} {%- else %}
user = User.objects.get(username="admin") user = User.objects.get(username="admin")

View File

@ -2,7 +2,7 @@ from {{ cookiecutter.project_slug }}.users.models import User
def test_user_get_absolute_url(user: User): def test_user_get_absolute_url(user: User):
{%- if cookiecutter.username_type == "email" -%} {%- if cookiecutter.username_type == "email" %}
assert user.get_absolute_url() == f"/users/{user.pk}/" assert user.get_absolute_url() == f"/users/{user.pk}/"
{%- else %} {%- else %}
assert user.get_absolute_url() == f"/users/{user.username}/" assert user.get_absolute_url() == f"/users/{user.username}/"

View File

@ -4,7 +4,7 @@ from {{ cookiecutter.project_slug }}.users.models import User
def test_detail(user: User): def test_detail(user: User):
{%- if cookiecutter.username_type == "email" -%} {%- if cookiecutter.username_type == "email" %}
assert ( assert (
reverse("users:detail", kwargs={"pk": user.pk}) reverse("users:detail", kwargs={"pk": user.pk})
== f"/users/{user.pk}/" == f"/users/{user.pk}/"

View File

@ -39,7 +39,7 @@ class TestUserUpdateView:
view.request = request view.request = request
{%- if cookiecutter.username_type == "email" -%} {%- if cookiecutter.username_type == "email" %}
assert view.get_success_url() == f"/users/{user.pk}/" assert view.get_success_url() == f"/users/{user.pk}/"
{%- else %} {%- else %}
assert view.get_success_url() == f"/users/{user.username}/" assert view.get_success_url() == f"/users/{user.username}/"
@ -83,7 +83,7 @@ class TestUserRedirectView:
view.request = request view.request = request
{%- if cookiecutter.username_type == "email" -%} {%- if cookiecutter.username_type == "email" %}
assert view.get_redirect_url() == f"/users/{user.pk}/" assert view.get_redirect_url() == f"/users/{user.pk}/"
{%- else %} {%- else %}
assert view.get_redirect_url() == f"/users/{user.username}/" assert view.get_redirect_url() == f"/users/{user.username}/"
@ -95,7 +95,7 @@ class TestUserDetailView:
request = rf.get("/fake-url/") request = rf.get("/fake-url/")
request.user = UserFactory() request.user = UserFactory()
{%- if cookiecutter.username_type == "email" -%} {%- if cookiecutter.username_type == "email" %}
response = user_detail_view(request, pk=user.pk) response = user_detail_view(request, pk=user.pk)
{%- else %} {%- else %}
response = user_detail_view(request, username=user.username) response = user_detail_view(request, username=user.username)
@ -107,7 +107,7 @@ class TestUserDetailView:
request = rf.get("/fake-url/") request = rf.get("/fake-url/")
request.user = AnonymousUser() request.user = AnonymousUser()
{%- if cookiecutter.username_type == "email" -%} {%- if cookiecutter.username_type == "email" %}
response = user_detail_view(request, pk=user.pk) response = user_detail_view(request, pk=user.pk)
{%- else %} {%- else %}
response = user_detail_view(request, username=user.username) response = user_detail_view(request, username=user.username)

View File

@ -10,7 +10,7 @@ app_name = "users"
urlpatterns = [ urlpatterns = [
path("~redirect/", view=user_redirect_view, name="redirect"), path("~redirect/", view=user_redirect_view, name="redirect"),
path("~update/", view=user_update_view, name="update"), path("~update/", view=user_update_view, name="update"),
{%- if cookiecutter.username_type == "email" -%} {%- if cookiecutter.username_type == "email" %}
path("<int:pk>/", view=user_detail_view, name="detail"), path("<int:pk>/", view=user_detail_view, name="detail"),
{%- else %} {%- else %}
path("<str:username>/", view=user_detail_view, name="detail"), path("<str:username>/", view=user_detail_view, name="detail"),

View File

@ -10,7 +10,7 @@ User = get_user_model()
class UserDetailView(LoginRequiredMixin, DetailView): class UserDetailView(LoginRequiredMixin, DetailView):
model = User model = User
{%- if cookiecutter.username_type == "email" -%} {%- if cookiecutter.username_type == "email" %}
slug_field = "id" slug_field = "id"
slug_url_kwarg = "id" slug_url_kwarg = "id"
{%- else %} {%- else %}
@ -44,7 +44,7 @@ class UserRedirectView(LoginRequiredMixin, RedirectView):
permanent = False permanent = False
def get_redirect_url(self): def get_redirect_url(self):
{%- if cookiecutter.username_type == "email" -%} {%- if cookiecutter.username_type == "email" %}
return reverse("users:detail", kwargs={"pk": self.request.user.pk}) return reverse("users:detail", kwargs={"pk": self.request.user.pk})
{%- else %} {%- else %}
return reverse("users:detail", kwargs={"username": self.request.user.username}) return reverse("users:detail", kwargs={"username": self.request.user.username})