Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
BDE
Note Kfet 2018
Commits
9ad1c308
Commit
9ad1c308
authored
Sep 03, 2018
by
Hamza Dely
Browse files
[comptes/models] Déplacement des validateurs dans un module séparé
parent
4ec3d61f
Changes
2
Hide whitespace changes
Inline
Side-by-side
comptes/models.py
View file @
9ad1c308
...
...
@@ -11,7 +11,6 @@ from django.db.models.signals import post_delete
from
django.contrib.auth
import
get_backends
from
django.contrib.auth.base_user
import
AbstractBaseUser
,
BaseUserManager
from
django.core.mail
import
send_mail
from
django.core.validators
import
RegexValidator
from
django.core.exceptions
import
ValidationError
,
PermissionDenied
from
django.template
import
loader
from
django.urls
import
reverse
...
...
@@ -21,14 +20,7 @@ from note_kfet import droits as m_droits
from
note_kfet.utils
import
CumulativeDict
from
note_kfet.environnement
import
ACCREDITATIONS_DEFAUT
## Regex utilisées pour la vérification des champs de modèles
PSEUDO_REGEX
=
r
"^(\S|\S+.*\S+)$"
# Pas de leading/trailing spaces
# XXX : Limiter aussi le nombre maximal d'espaces consécutifs dans le pseudo ?
# |---> r"(\S|\S+(\S|\s{,n})*\S+)", avec n bien choisi ?
DELETED_REGEX
=
r
"^__deleted__[0-9]+$"
# Les pseudos en '__deleted__[0-9]+' sont réservés
ID_REGEX
=
r
'^#[0-9]+$'
# Les pseudos en '#<nombre>' sont réservés à l'identification via ID BdE
TELEPHONE_REGEX
=
r
"^[0-9 -]+$"
from
comptes
import
validators
class
Section
(
models
.
Model
):
"""
...
...
@@ -73,9 +65,9 @@ class Alias(models.Model):
blank
=
False
,
null
=
False
,
validators
=
[
RegexValidator
(
DELETED_REGEX
,
inverse_match
=
True
),
RegexV
alidator
(
ID_REGEX
,
inverse_match
=
True
),
RegexValidator
(
PSEUDO_REGEX
),
validators
.
DeletedValidator
(
inverse_match
=
True
),
v
alidator
s
.
IDValidator
(
inverse_match
=
True
),
validators
.
PseudoValidator
(
),
]
)
proprietaire
=
models
.
ForeignKey
(
...
...
@@ -505,8 +497,8 @@ class Adherent(AbstractBaseUser):
blank
=
False
,
null
=
False
,
validators
=
[
RegexV
alidator
(
ID_REGEX
,
inverse_match
=
True
),
RegexValidator
(
PSEUDO_REGEX
),
v
alidator
s
.
IDValidator
(
inverse_match
=
True
),
validators
.
PseudoValidator
(
),
],
)
nom
=
models
.
CharField
(
...
...
@@ -550,7 +542,7 @@ class Adherent(AbstractBaseUser):
max_length
=
50
,
blank
=
True
,
null
=
False
,
validators
=
[
RegexValidator
(
TELEPHONE_REGEX
)],
validators
=
[
validators
.
TelephoneValidator
(
)],
)
adresse
=
models
.
TextField
(
blank
=
True
,
...
...
comptes/validators.py
0 → 100644
View file @
9ad1c308
"""
Validateurs utilisés par les modèles de l'application Comptes
"""
from
django.core.validators
import
RegexValidator
## Regex utilisées pour la vérification des champs de modèles
PSEUDO_REGEX
=
r
"^(\S|\S+.*\S+)$"
# Pas de leading/trailing spaces
# XXX : Limiter aussi le nombre maximal d'espaces consécutifs dans le pseudo ?
# |---> r"(\S|\S+(\S|\s{,n})*\S+)", avec n bien choisi ?
DELETED_REGEX
=
r
"^__deleted__[0-9]+$"
# Les pseudos en '__deleted__[0-9]+' sont réservés
ID_REGEX
=
r
'^#[0-9]+$'
# Les pseudos en '#<nombre>' sont réservés à l'identification via ID BdE
TELEPHONE_REGEX
=
r
"^[0-9 -]+$"
class
PseudoValidator
(
RegexValidator
):
regex
=
PSEUDO_REGEX
class
DeletedValidator
(
RegexValidator
):
regex
=
DELETED_REGEX
class
IDValidator
(
RegexValidator
):
regex
=
ID_REGEX
class
TelephoneValidator
(
RegexValidator
):
regex
=
TELEPHONE_REGEX
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment