60 lines
2.8 KiB
Python
60 lines
2.8 KiB
Python
from django.contrib.auth import views as auth_views
|
|
from django.urls import path
|
|
from django.utils.translation import gettext_lazy as _
|
|
|
|
from crochet.forms import StyledAuthenticationForm
|
|
from crochet.views import (
|
|
AccountEmailUpdateView,
|
|
AccountHomeView,
|
|
AccountPasswordChangeView,
|
|
AccountSettingsView,
|
|
HomeView,
|
|
PatternCoverImageUploadView,
|
|
PatternCreateView,
|
|
PatternDeleteView,
|
|
PatternDetailView,
|
|
PatternEditView,
|
|
PatternImageUploadView,
|
|
PatternPdfView,
|
|
PatternSaveView,
|
|
RegisterView,
|
|
)
|
|
|
|
app_name = 'crochet'
|
|
|
|
# Cada ruta entera es una única cadena traducible (ver crochet/locale/), no
|
|
# la concatenación de un prefijo traducido con literales sueltos: Django solo
|
|
# recompila la regex de la ruta por idioma (ver LocaleRegexRouteDescriptor)
|
|
# si `route` sigue siendo el propio objeto perezoso de gettext_lazy al llegar
|
|
# a path(); en cuanto se concatena con '+' deja de serlo (se evalúa entero
|
|
# de golpe, con el idioma activo en ese momento, y queda fijo para siempre).
|
|
# Con esto, con i18n_patterns (ver config/urls.py) la URL sale traducida
|
|
# entera según el prefijo de idioma, p.ej. /en/pattern/<uuid>/edit/ frente a
|
|
# /es/patron/<uuid>/editar/.
|
|
urlpatterns = [
|
|
path('', name='home', view=HomeView.as_view()),
|
|
path(_('pattern/<uuid:uuid>/'), name='pattern_detail', view=PatternDetailView.as_view()),
|
|
path(_('pattern/<uuid:uuid>/edit/'), name='pattern_edit', view=PatternEditView.as_view()),
|
|
path(_('pattern/<uuid:uuid>/save/'), name='pattern_save', view=PatternSaveView.as_view()),
|
|
path(_('pattern/<uuid:uuid>/images/'), name='pattern_image_upload', view=PatternImageUploadView.as_view()),
|
|
path(_('pattern/<uuid:uuid>/cover/'), name='pattern_cover_upload', view=PatternCoverImageUploadView.as_view()),
|
|
path(_('pattern/<uuid:uuid>/pdf/'), name='pattern_pdf', view=PatternPdfView.as_view()),
|
|
path(_('pattern/<uuid:uuid>/delete/'), name='pattern_delete', view=PatternDeleteView.as_view()),
|
|
path(_('pattern/new/'), name='pattern_create', view=PatternCreateView.as_view()),
|
|
path(_('account/'), name='account_home', view=AccountHomeView.as_view()),
|
|
path(_('account/settings/'), name='account_settings', view=AccountSettingsView.as_view()),
|
|
path(_('account/settings/email/'), name='account_settings_email', view=AccountEmailUpdateView.as_view()),
|
|
path(
|
|
_('account/settings/password/'), name='account_settings_password',
|
|
view=AccountPasswordChangeView.as_view(),
|
|
),
|
|
path(_('account/register/'), name='register', view=RegisterView.as_view()),
|
|
path(
|
|
_('account/login/'), name='login',
|
|
view=auth_views.LoginView.as_view(
|
|
template_name='registration/login.html', authentication_form=StyledAuthenticationForm,
|
|
),
|
|
),
|
|
path(_('account/logout/'), name='logout', view=auth_views.LogoutView.as_view()),
|
|
]
|