自定义django runserver输出

时间:2011-03-29 12:50:00

标签: python django logging

我想编辑django runserver的put ...我想添加现在的对象地址,如apps.views.index

在此请求中添加所有查询

如何更改此设置的代码?

3 个答案:

答案 0 :(得分:2)

我不建议修改runserver命令,但是......

django-devserver可替换manage.py runserver命令,该命令允许扩展输出以显示您感兴趣的任何信息。

上面链接的页面上的说明显示了如何安装,并且在底部附近有一个“Building Modules”,它显示了扩展输出的示例。

我不确定你要输出什么,但可能是这样的:

from devserver.modules import DevServerModule

class ViewNameModule(DevServerModule):
    logger_name = 'view name module'

    def process_view(self, request, view_func, view_args, view_kwargs):
        self.logger.info('View name: %s' % '.'.join([view_func.__module__, view_func.func_name]))

答案 1 :(得分:1)

我认为最好的方法是使用日志记录并为此添加一些代码

喜欢

from django.db import connection
sql=connection.queries

doc = {
                'record_hash': hash,
                'level': record.level,
                'channel': record.channel or u'',
                'location': u'%s:%d' % (record.filename, record.lineno),
                "message": record.msg,
                'module': record.module or u'<unknown>',
                'occurrence_count': 0,
                'solved': False,
                'app_id': app_id,
                'sql': sql,
            }

http://docs.djangoproject.com/en/dev/topics/logging/

中详细了解此信息

答案 2 :(得分:0)

不完全是您问题的答案,但我认为django-debug-toolbar会显示所有查询和许多其他有用的信息。