在调用检查某些条件、进行一些更改、设置消息并重定向到原始对象的帮助程序 Grok 视图后,我有一个需要以某种方式修改的内容类型。
我的助手视图只有一个渲染方法,我想为它编写一些测试,但我不知道如何处理。
我想在不满足某些条件时检查错误消息,并在一切正常时检查信息消息。
我的代码如下所示:
class MyHelperView(grok.View):
grok.context(IMyType)
grok.layer(IMyLayer)
grok.name('helper-view')
grok.require('my.permission')
def render(self):
variable = self.request.form.get('variable', None)
if not variable:
msg = _(u'Required input is missing.')
api.portal.show_message(message=msg, request=self.request, type='error')
else:
do_something()
msg = _(u'Information processed.')
api.portal.show_message(message=msg, request=self.request)
self.request.response.redirect(self.context.absolute_url())
当我调用视图时,显然我以 None 对象结束,因为视图没有返回任何内容。我不知道在哪里寻找消息...请求?回复?任何提示?