diff options
| author | Andrew <saintruler@gmail.com> | 2019-07-23 12:26:38 +0400 |
|---|---|---|
| committer | Andrew <saintruler@gmail.com> | 2019-07-23 12:26:38 +0400 |
| commit | 38055bcd23527a36d77468ce2dfd0b4766e7fc00 (patch) | |
| tree | 5cc6d3c69fcdb66ea6b666c23c8996918b4096f2 /day9/task5_vue/backend/database/validators.py | |
| parent | 3bc79068d5d7bae4bb4ecd3a50ff1c7cade4a3a7 (diff) | |
Бэкенд:
Добавлены тесты, исправлены ошибки в валидаторах и полях схем баз данных.
Фронтенд:
Добавлен компонент для показа всплывающих сообщений.
Diffstat (limited to 'day9/task5_vue/backend/database/validators.py')
| -rw-r--r-- | day9/task5_vue/backend/database/validators.py | 16 |
1 files changed, 10 insertions, 6 deletions
diff --git a/day9/task5_vue/backend/database/validators.py b/day9/task5_vue/backend/database/validators.py index e4b7310..112af2b 100644 --- a/day9/task5_vue/backend/database/validators.py +++ b/day9/task5_vue/backend/database/validators.py @@ -32,8 +32,12 @@ class ValidateType(Validator): class ValidateLength(Validator): @staticmethod def validate(value, field_object): + if hasattr(field_object, 'is_variable_length') and not field_object.is_variable_length: + if len(str(value)) < field_object.max_length: + raise ValidationError('Value has too few characters') + if len(str(value)) > field_object.max_length: - raise ValidationError('Value has too many digits') + raise ValidationError('Value has too many characters') class ValidateTime(Validator): @@ -65,14 +69,14 @@ class ValidateDate(Validator): if year < 0: raise ValidationError('Wrong year value') - if month not in range(1, 12): + if month not in range(1, 12 + 1): raise ValidationError('Wrong month value') if month == 2: if year % 4 == 0 and year % 100 != 0 or year % 400 == 0: - febr_range = range(1, 29) + febr_range = range(1, 29 + 1) else: - febr_range = range(1, 28) + febr_range = range(1, 28 + 1) if day not in febr_range: raise ValidationError('Wrong day value') else: @@ -81,7 +85,7 @@ class ValidateDate(Validator): 6: 30, 7: 31, 8: 31, 9: 30, 10: 31, 11: 30, 12: 31 }.get(month) - if day not in range(1, days_count): + if day not in range(1, days_count + 1): raise ValidationError('Wrong day value') @@ -93,4 +97,4 @@ class ValidateDatetime(Validator): raise ValidationError('Wrong datetime format') else: ValidateDate.validate(datetime[0], {}) - ValidateTime.validate(datetime[1], {})
\ No newline at end of file + ValidateTime.validate(datetime[1], {}) |