Advertisement
Guest User

Untitled

a guest
Dec 20th, 2016
136
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.30 KB | None | 0 0
  1. from galaxypi import db
  2. from galaxypi.users import constants as USER
  3. from sqlalchemy.orm import validates
  4. from flask.ext.login import UserMixin
  5.  
  6. ERROR_MSG = 'Empty fields are not allowed'
  7.  
  8. class User(db.Model, UserMixin):
  9. id = db.Column(db.Integer, primary_key = True)
  10. company = db.Column(db.String(50))
  11. first_name = db.Column(db.String(50), nullable=False)
  12. last_name = db.Column(db.String(50), nullable=False)
  13. mobile = db.Column(db.Integer)
  14. email = db.Column(db.String(120), unique=True, nullable=False)
  15. password = db.Column(db.String(30), nullable=False)
  16. myadd = db.relationship('Address', back_populates='myuser')
  17.  
  18. def __init__(self, company, first_name, last_name, mobile, email, password):
  19. self.company = company
  20. self.first_name = first_name
  21. self.last_name = last_name
  22. self.mobile = mobile
  23. self.email = email
  24. self.password = password
  25.  
  26. @validates('company')
  27. def validate_company(self, key, value):
  28. assert value, ERROR_MSG
  29. return value
  30.  
  31. @validates('first_name')
  32. def validate_first_name(self, key, value):
  33. assert value, ERROR_MSG
  34. return value
  35.  
  36. @validates('last_name')
  37. def validate_last_name(self, key, value):
  38. assert value, ERROR_MSG
  39. return value
  40.  
  41. @validates('mobile')
  42. def validate_mobile(self, key, value):
  43. assert value, ERROR_MSG
  44. return value
  45.  
  46. @validates('password')
  47. def validate_password(self, key, password):
  48. if not len(password):
  49. assert len(password) != 0, ERROR_MSG
  50. return password
  51. else:
  52. assert len(password) > 5, 'Password should be more than 5 characters long'
  53. return password
  54.  
  55. class Address(db.Model):
  56. id = db.Column(db.Integer, primary_key = True)
  57. address = db.Column(db.String(120), nullable=False)
  58. landmark = db.Column(db.String(120), nullable=False)
  59. add_id = db.Column(db.Integer, db.ForeignKey('user.id'))
  60. myuser = db.relationship('User', back_populates='myadd', foreign_keys='Address.add_id')
  61.  
  62. def __init__(self, address, landmark):
  63. self.address = address
  64. self.landmark = landmark
  65.  
  66. @validates('address')
  67. def validate_address(self, key, value):
  68. assert len(value) != 0
  69. return value
  70.  
  71. @validates('landmark')
  72. def validate_landmark(self, key, value):
  73. assert len(value) != 0
  74. return value
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement