class CodeForm(Form): content = CodeMirrorField('content') file_name = fields.HiddenField('file_name') submit = fields.SubmitField('submit') theme = fields.SelectField('Theme', choices=theme_choice) mode = fields.SelectField('mode', choices=mode_choice) test_select = fields.SelectField( 'test', choices=test_choice, option_widget=widgets.RadioInput(), widget=widgets.ListWidget(prefix_label=False))
class ScriptForm(Form): scriptname = StringField('脚本名称:', [ validators.DataRequired("脚本名称必填!"), validators.Regexp(r".+(.py)$", message="脚本名称必须以.py结尾") ]) desc = TextField('脚本描述:', [validators.DataRequired()]) content = CodeMirrorField('脚本内容:', language='python', config={ 'lineNumbers': 'true', 'lineWrapping': 'true', 'indentUnit': 10 }) submit = SubmitField('保存')
def get_edit_form(self): filetype_map = dict( html='jinja2', js='javascript', py='python', ) edit_file = request.args.get("path", "default.html") file_ext = os.path.splitext(edit_file)[-1].split('.')[-1] file_language = filetype_map[ file_ext] if file_ext in filetype_map else file_ext print "LANGUAGE: {}, EXT: {}".format(file_language, file_ext) return type( 'EditForm', (self.form_base_class, ), dict(content=CodeMirrorField('Content', language=file_language, config=dict(lineNumbers=True))), )
class AddPageForm(Form): date_added = fields.DateField('Publish On:',format="%m-%d-%Y",widget=DateWidget()) date_end = fields.DateField('Expire On:',format="%m-%d-%Y",validators=[validators.Optional()],widget=DateWidget()) name = fields.StringField('Page Name',validators=[validators.InputRequired()]) description = fields.TextAreaField('Description',validators=[validators.Optional()]) slug = fields.StringField('Page Slug',validators=[validators.InputRequired()]) short_url = fields.StringField('Url',validators=[validators.Optional()]) title = fields.StringField('Page Title',validators=[validators.InputRequired()]) add_to_nav = fields.BooleanField('Add to Navbar') add_sidebar = fields.BooleanField('Add Sidebar') visible = fields.SelectField(choices=((1,'Publish'),(0,'Draft'))) meta_title = fields.StringField('Meta Title',validators=[validators.InputRequired()]) content = CodeMirrorField('Content',language='xml',config={'lineNumbers':'true'}) template = fields.FormField(BaseTemplateForm,label="Template",separator='_') blocks = fields.SelectMultipleField(label="blocks",choices=[('a','a'),('b','b'),('c','c')]) category = QuerySelectField('category') tags = TagField('Tags') use_base_template = fields.BooleanField('Use Base Template') base_template = fields.SelectField('base template',validators=[validators.InputRequired()]) submit = fields.SubmitField('Save')
class TSForm(Form): service = SelectField('选择接口:', coerce=int, default=1) connect_timeout = FloatField('连接超时(秒):', [ validators.Optional(True), validators.NumberRange(0, 1000, "请输入1~1000范围内的整数!") ]) response_timeout = FloatField('响应超时(秒):', [ validators.Optional(True), validators.NumberRange(0, 1000, "请输入1~1000范围内的整数!") ]) need_headers = BooleanField('需要修改headers') headers = StringField('headers:(请按需修改)') data = CodeMirrorField( '请求数据(json格式,例:{"orderID":12,"orderTime":"1440060000"})', language='html', config={ 'lineNumbers': 'true', 'lineWrapping': 'true', 'smartIndent': 'true' }) returnfield = StringField('返回字段Counter:')
class CodeForm(Form): content = CodeMirrorField('content') file_name = fields.HiddenField('file_name') submit = fields.SubmitField('submit')
class MyForm(Form): source_code = CodeMirrorField(language='python', config={'lineNumbers' : 'true'}, default=a) submit = SubmitField('Submit')