总体而言,我对Web开发还很陌生;我正在实时学习所有内容。我最近启动并运行了Django应用程序,但是我做事的方式感觉很肮脏/笨拙。
问题:用户需要(可能)将大量数据输入到我网页上的类似Excel的电子表格中。我目前正在为此使用Handsontable。然后,我需要获取数据,对其进行一些查询,处理结果,然后将Excel工作表返回给用户。
由于Handsontable是在页面加载时通过Javascript呈现的,而不是在Django上呈现的,因此我需要找出解决方法,以将数据输入到我的views.py中(我也不能严格使用AJAX,因为我无法计算说明请求完成后如何将文件发送到浏览器。
当前解决方案:我隐藏了Django Textarea。当用户提交表单时,我有一个Javascript函数以JSON形式将Handsontable转储到其中。然后,在我的views.py中,我解析JSON,并执行所需的操作,然后将Excel文件返回给用户。一个隐藏的字段来解决所有这些问题似乎并不正确。
是否有更好的方法发送Django信息,并且仍然可以处理响应?就像我在上面说的那样,使用AJAX直到最后都非常有效-当我不得不将文件提供给用户而没有时,让他们单击额外的链接(或我见过的其他解决方法)。