123456789101112131415161718192021222324252627282930313233343536373839404142434445 |
- # -*- coding: utf-8 -*-
- from __future__ import unicode_literals
- from tastypie.validation import Validation
- class UserValidation(Validation):
-
- '''
- '''
- def is_valid(self, bundle, request=None):
- if not bundle.data:
- return {
- '__all__': 'data not provided in bundle'
- }
- errors = {}
- if request.method == 'POST':
- if not 'first_name' in bundle.data:
- errors['first_name'] = 'this field is required'
- if not 'last_name' in bundle.data:
- errors['last_name'] = 'this field is required'
- if not 'username' in bundle.data:
- errors['username'] = 'this field is required'
- if not 'email' in bundle.data:
- errors['email'] = 'this field is required'
- if not 'password' in bundle.data:
- errors['password'] = 'this field is required'
- else:
- if 'username' in bundle.data:
- errors['username'] = 'cannot update this field'
- if 'password' in bundle.data:
- errors['password'] = 'cannot update password here, use endpoint for specific action'
- if 'last_login' in bundle.data:
- errors['last_login'] = 'cannot create or update this field'
- if 'date_joined' in bundle.data:
- errors['date_joined'] = 'cannot create or update this field'
- return errors
|