【发布时间】:2013-05-10 19:04:27
【问题描述】:
我在插件中有一个表单,在提交时我需要重定向到另一个页面。
最好的方法是什么?
因此可能的解决方案是:
- 使用 App-Hook
- 在插件渲染方法中引发异常,该异常会被中间件类捕获并从那里进行重定向。
- 创建一个中间件类并在“process_response”方法期间检查在插件的渲染方法期间添加的请求对象上的值,然后执行重定向。
【问题讨论】:
-
它是一个呈现表单的自定义插件。
-
好的,所以您还需要将您的页面挂钩到通过 CMS App Hook 处理 POST 的视图。然后你就可以进行重定向了。
-
害怕那个。从我研究过的唯一其他解决方案是在插件中抛出异常并在中间件类中捕获它。要么在请求中添加一些东西,要么在渲染后在某处使用中间件来进行重定向。
-
好吧,当你的插件渲染表单时,你能不能只将表单动作指向你想要的视图,然后从那里处理重定向?一种选择是对表单进行 ajax 提交,然后在客户端处理重定向。那么你就不必有一个应用程序挂钩。
标签: django django-cms