我想在turbogears abort函数中使用一些HTML消息。
虽然名称不完全匹配(我使用' tg.abort'函数),但这是我发现的中止定义: abort
目前使用的代码:
from tg import abort
message="The following {} occured, this is due to {}, please visit this url : {}".format(error, reason, url)
abort(status_code=502, detail=message)
我想有这样的事情:
from tg import abort
message="""The following error occured : {}</br>
The most probable reason would be {} </br>
<a href="{}">Your solution might be found here</a>
""".format(error, reason, url)
abort(status_code=502, detail=message)
我认为内容会自动转义。
从中止函数生成的Html页面,包含类似这样的内容:
<html>
<head>
<title>502 Bad Gateway</title>
</head>
<body>
<h1>502 Bad Gateway</h1>
Bad gateway.<br /><br />
The following error occured : hungry<br/>
The most probable reason would be : maybe you should eat </br>
<a href="http://dummyurl">Your solution might be found here</a>
</body>
</html>
&#13;
如果您对如何在不转义的情况下插入HTML代码有所了解,我会非常感兴趣。 此外,我真的专注于这里的中止方法,我知道我可以使用一些使用模板框架的专用页面(就像网站的其他部分一样)。
非常感谢。
此致
答案 0 :(得分:0)
错误消息实际上是由应用程序中的controllers/error.py
代码公开的。因此,如果您想要从中止详细信息中公开消息,您应该获取它并将其返回ErrorController
。
现在,默认情况下会对新启动的项目执行此操作(请参阅https://github.com/TurboGears/tg2devtools/blob/master/devtools/templates/turbogears/%2Bpackage%2B/controllers/error.py_tmpl#L27),但旧版本未执行此操作。