如何使用html和cheeypy将对象放在隐藏的输入字段中

par*_*shm 5 html python cherrypy

    below is abc.html

    <div xmlns:xi="http://www.w3.org/2001/XInclude"
         xmlns:py="http://genshi.edgewall.org/" py:strip="True" >
            <div class="insync-bluthm-tbl-wrp">
                <div class="insync-bluthm-tbl-scroll">
                    <div class="insync-bluthm-tbl-scroll-inr">
                        <table class="insync-bluthm-tbl">
                        <thead>
                            <tr>
                                <th><div>File Name</div></th>
                            </tr>
                        </thead>
                        <tbody>
                            <input type="hidden" id="restorable_data" value="${restoreData}"/>
                            <tr>
                                <td><div>Dummy File name</div></td>
                            </tr>
                        </tbody>
                    </table>
                    </div>
                </div>
            </div>
    </div>

    below is python function

    @cherrypy.expose
    def can_restore_mds(self, *args, **kwargs):
    restoreData = {
            'abc': 'def',
            'akjshd': 'asd',
            'is_valid': 1,
    }
    restore_context = {
        'page': 'abc.html',
        'restoreData': restoreData,
    }
    html = render_page(restore_context, restore_context['page'])
    return {
        'html': html,
        'restoreData': restoreData,
    }
    return response
Run Code Online (Sandbox Code Playgroud)

“ restoreData”是一个变量,在服务器端呈现中未以正确的格式注入该变量,任何人都可以帮助您完成哪些工作吗?

Shi*_*mar 3

您可以使用 json dumps 函数来执行此操作:-

Python

# remember to import json in your python file
restoreData = {
    'abc': 'def',
    'akjshd': 'asd',
    'is_valid': 1,
}
restore_context = {
    'page': 'abc.html',
    'restoreData': json.dumps(restoreData),
}
Run Code Online (Sandbox Code Playgroud)

超文本标记语言

<input type="hidden" id="restorable_data" value="${restoreData}"/>
Run Code Online (Sandbox Code Playgroud)