对flask wtf使用codemrror javascript库

flask-codemirror的Python项目详细描述


versionlicense

使用codemarror javascript库实现flask和flask wtf的源代码编辑器

安装

$ pip install flask-codemirror

示例

如何使用此模块的简单示例

fromflask_wtfimportFlaskFormfromflask_codemirror.fieldsimportCodeMirrorFieldfromwtforms.fieldsimportSubmitFieldclassMyForm(FlaskForm):source_code=CodeMirrorField(language='python',config={'lineNumbers':'true'})submit=SubmitField('Submit')

codemrrorfield的工作方式与textarefield

@app.route('/',methods=['GET','POST'])defindex():form=MyForm()ifform.validate_on_submit():text=form.source_code.datareturnrender_template('index.html',form=form)

模块需要以通常的方式初始化,并且可以使用app.config键进行配置

fromflaskimportFlaskfromflask_codemirrorimportCodeMirror# mandatoryCODEMIRROR_LANGUAGES=['python','html']WTF_CSRF_ENABLED=TrueSECRET_KEY='secret'# optionalCODEMIRROR_THEME='3024-day'CODEMIRROR_ADDONS=(('ADDON_DIR','ADDON_NAME'),)app=Flask(__name__)app.config.from_object(__name__)codemirror=CodeMirror(app)

需要初始化配置代码镜像语言以加载javascript。它定义了所有要用字段编辑的语言。 configcodemirror\u主题是可选的,用于使用CodeMirror website中的css设置文本区域的样式。 configcodemirror\u插件是可选的,可以启用许多很酷的选项请参见Codemirror Addons以获取可用的插件。

最后,模板需要添加支持javascript代码,方法是调用codemarror.include@codemarror()

<html>
  <head>
    {{codemirror.include_codemirror()}}
  </head>
  <body>
    <form method="POST">
       {{form.source_code}}
       <input type="submit" value="OK">
    </form>
  </body>
</html>

javascript类是从cdn导入的,应用程序不需要提供静态文件。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
使用Selenium Java查找筛选器窗格“铅笔图标”的元素时出现问题   分布式缓存l2上使用infinispan和hibernate的java连接锁   使用Java的DOM XML API解析XML中的符号和   java是解析和操作字符串的有效方法   java发布NewRelicMeterRegistry时如何过滤仪表   多维数组在java中读取文件后将数据值分组   java如何将httpClient配置为jsoup   java BreakIterator在Android中是如何工作的?   找不到maven GAE类:原因:java。lang.ClassNotFoundException应用程序标识cRedential$AppenginecRedential包装   Jlabel调整java大小   调试如何在VScode中的java类依赖项中设置断点   java正在获取文件夹名,而不是。mp3文件{Android}   java如何将从DiffieHellman类生成的AES密钥添加到使用该密钥的类