server.py 949 B

123456789101112131415161718192021222324252627282930313233
  1. # -*- coding: utf-8 -*-
  2. """
  3. walle-web
  4. :copyright: © 2015-2017 walle-web.io
  5. :created time: 2017-03-19 15:50:07
  6. :author: wushuiyong@walle-web.io
  7. """
  8. try:
  9. from flask_wtf import FlaskForm # Try Flask-WTF v0.13+
  10. except ImportError:
  11. from flask_wtf import Form as FlaskForm # Fallback to Flask-WTF v0.12 or older
  12. from flask_wtf import Form
  13. from wtforms import TextField
  14. from wtforms import validators, ValidationError
  15. from walle.model.deploy import ServerModel
  16. class ServerForm(Form):
  17. name = TextField('name', [validators.Length(min=1, max=100)])
  18. host = TextField('host', [validators.Length(min=1, max=100)])
  19. id = None
  20. def set_id(self, id):
  21. self.id = id
  22. def validate_name(self, field):
  23. server = ServerModel.query.filter_by(name=field.data).first()
  24. # 新建时,环境名不可与
  25. if server and server.id != self.id:
  26. raise ValidationError('该Server已重名')