如何关闭Web2py票务系统?

时间:2010-06-11 00:05:27

标签: web2py

我希望Web2py只返回错误屏幕/堆栈跟踪...我不希望这个售票系统到位。我怎么能把它关掉?

2 个答案:

答案 0 :(得分:2)

你做不到。如果您以管理员身份登录并单击了票号,则会打开一个包含堆栈跟踪的窗口。您可以在routes.py中使用routes_onerror向用户显示不同的错误页面,如果您不希望公开它,则隐藏票证编号。

答案 1 :(得分:1)

通过执行以下操作,我在Web2py生产环境中向最终用户隐藏票证:

1)在模型(db.py)中,我测试是否在生产环境中,如果是,则向用户请求添加一个名为hide_ticket的变量:

# The is_production variable is read from an environment variable earlier.
if settings.is_production:
    request.hide_ticket = True

2)然后将gluon / main.py修改为此:

    if request.hide_ticket:
        http_response = \
            HTTP(500, '<html><body><h1>Request Failed</body></h1></html><!--- IE Needs this' + ('x' * 512) + '--->' )

    else:
        http_response = \
            HTTP(500, rwthread.routes.error_message_ticket %
                 dict(ticket=ticket),
                 web2py_error='ticket %s' % ticket)

代替此:

 http_response = \
                HTTP(500, rwthread.routes.error_message_ticket %
                     dict(ticket=ticket),
                     web2py_error='ticket %s' % ticket)