views.py 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. #!/usr/bin/env python
  2. # -*- coding=UTF-8 -*-
  3. # **************************************************************************
  4. # Copyright © 2016 jianglin
  5. # File Name: views.py
  6. # Author: jianglin
  7. # Email: xiyang0807@gmail.com
  8. # Created: 2016-06-17 13:25:39 (CST)
  9. # Last Update:星期日 2016-6-19 13:36:5 (CST)
  10. # By:
  11. # Description:
  12. # **************************************************************************
  13. from flask_maple import Auth
  14. from maple import app, mail, db
  15. from maple.user.models import User, UserInfor, UserSetting, Role
  16. class Login(Auth):
  17. def register_models(self, form):
  18. user = self.User()
  19. user.username = form.username.data
  20. user.password = user.set_password(form.password.data)
  21. user.email = form.email.data
  22. userinfor = UserInfor()
  23. user.infor = userinfor
  24. usersetting = UserSetting()
  25. user.setting = usersetting
  26. role = Role.query.filter_by(rolename='unconfirmed').first()
  27. if role is None:
  28. role = Role()
  29. role.rolename = 'unconfirmed'
  30. user.roles.append(role)
  31. self.db.session.add(user)
  32. self.db.session.commit()
  33. return user
  34. def confirm_models(self, user):
  35. user.is_confirmed = True
  36. self.db.session.commit()
  37. auth = Login(app, db=db, mail=mail, user_model=User, use_principal=True)