簡體   English   中英

如何在編輯器內容更改時將 ckeditor5 內容發送到 python flask

[英]how to send ckeditor5 content to python flask on change in the editor content

我正在編寫代碼來獲取數據,因為用戶在 ckeditor 中為我的拼寫檢查項目鍵入(或復制粘貼到編輯器),我需要在每次更改時在編輯器中獲取數據,所以我創建了一個變量 editorData 它將保存改變的價值。 但由於我是 web 編程的新手,我無法使用 python flask 將此數據發送到服務器,這是我的代碼的樣子:

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title>CKEditor 5 – Classic editor</title>
    <script src="https://cdn.ckeditor.com/ckeditor5/25.0.0/classic/ckeditor.js"></script>
</head>
<body>
    <h1>Classic editor</h1>
    <div id="editor" method ="POST" ></div>
    <script>
    ClassicEditor
    .create( document.querySelector( '#editor' ) )
    .then( editor => {
        editor.model.document.on( 'change:data', () => {
            editorData = editor.getData();
        console.log( 'The data has changed!' )
        } );
    } )
    .catch( error => {
        console.error( error );
    } );
</script>
</body>
</html>

Python flask 代碼

from flask import Flask, render_template, request
from flask_ckeditor import CKEditor


app = Flask(__name__)


@app.route('/', methods=['GET'])
def new_post():
    print('hello')
    if request.method == ' POST':
        data = editorData 
       
        print(data)

    return render_template('test-page.html')

if __name__ == "__main__":

    app.run(debug=True)

每次編輯器發生變化時,請幫助我如何將創建的 javascript 變量發送到 flask 服務器。

您必須將編輯器放入 POST 請求中,以便將內容發送到后端

HTML:

...
<form method=post enctype="multipart/form-data">

  <div id="editor" name="content">Content</div>

<p><input type=submit value="Save">

</form>
...

然后用您的 api 獲取它。

后端:

@app.route('/', methods=['GET'])
def new_post():
    if request.method == ' POST':
        data = request.form.get("content") 
       
        print(data)

    return render_template('test-page.html')

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM