我有一个表单,它接受 1-6 之间的数字和一个文件。您可以在我的另一个问题中看到代码:https://stackoverflow.com/questions/43611769/django-javascript-modal-form-validation
我必须验证表单,而不必重新加载它,因为它是模态表单并且在刷新时关闭(或者应该在刷新时打开它,但我真的不喜欢重新加载的想法)。所以我希望模式显示错误,如果有的话(错误的文件类型,模型已经存在......)我将如何实现这一点?
有人建议我异步发布表单并使用 JavaScript 显示错误。我如何从 django 中的 View 发送 javascript 消息,而无需重新加载页面?用Json可以实现吗?怎么办?
提前谢谢您!
最佳答案
你必须选择:
- Django 验证 View 将返回 JsonResponse
在这种情况下,您将数据发送到此 View ,该 View 将检查数据是否有效并返回适当的响应。然后解析响应并显示错误(如果有)。 - Javascript 验证。您在 javascript 代码中创建验证器,它将检查文件类型是否合适等。Here您有示例如何仅允许指定类型的文件。
在两种情况下,您都应该在保存到数据库/服务器的 View 中验证数据,而其他人可以直接将数据发送到您的保存 View (例如使用 Postman)。 我建议采用第二种方法,因为它速度更快,而且对服务器的调用更少。
关于javascript - Django - 使用 javascript 显示结果(错误),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43687307/