• Django之ALLOWED_HOSTS、LOGGING和多个子应用管理


    一、ALLOWED_HOSTS配置

    • 可以使用那些iP或者域名来访问系统
    • 默认为空,可以使用127.0.0.1或者localhost,也可以指定ip
    • 如果想允许任何ip进行访问,可以设置为*

    在项目下的settings.py中设置

    ALLOWED_HOSTS = ['*']

    二、LOGGING配置

    在django的全局配置文件中有如下配置

    ###########
    # LOGGING #
    ###########
    
    # The callable to use to configure logging
    LOGGING_CONFIG = 'logging.config.dictConfig'
    
    # Custom logging configuration.
    LOGGING = {}

    我们可以在项目下的配置文件settings.py中进行重写

    LOGGING = {
        'version': 1,
        'disable_existing_loggers': False,
        'formatters': {
            'simple': {
                'format': '%(asctime)s - [%(levelname)s] - [msg]%(message)s'
            },
            'verbose': {
                'format': '%(asctime)s - [%(levelname)s] - %(name)s - [msg]%(message)s - [%(filename)s:%(lineno)d ]'
            }
        },
        'filters': {
            'require_debug_true': {
                '()': 'django.utils.log.RequireDebugTrue'
            }
        },
        'handlers': {
            'console': {
                'level': 'INFO',
                'filters': ['require_debug_true'],
                'class': 'logging.StreamHandler',
                'formatter': 'simple'
            },
            'file': {
                'level': 'DEBUG',
                'class': 'logging.handlers.RotatingFileHandler',
                'filename': os.path.join(BASE_DIR, 'logs/run.log'),
                'maxBytes': 100 * 1024 * 1024,
                'backupCount': 10,
                'formatter': 'verbose'
            }
        },
        'loggers': {
            'run': {
                'handlers': ['console', 'file'],
                'propagate': True,
                'level': 'DEBUG'
            }
        }
    }

    在对应需要记录日志的地方,执行如下操作即可

    import logging
    
    logger = logging.getLogger('run')
    
    logging.DEBUG('这是一个DEBUG级别日志')
    logging.INFO('这是一个INFO级别日志')
    logging.WARNING('这是一个WARNING级别日志')
    logging.ERROR('这是一个ERROR级别日志')
    logging.CRITICAL('这是一个CRITICAL级别日志')

    三、多子应用管理

    1.在项目下创建apps目录

    2.添加apps目录搜索路径

    在项目下的全局配置中添加如下代码

    import sys
    sys.path.append(os.path.join(BASE_DIR, 'apps'))

    为了让它有智能提示,可以将apps添加为根路径,这里注意只是为了有智能提示,并不影响真正的根路径

    3.配置子应用

    在全局配置settings.py模块下的INSTALLED_APPS中添加子应用

  • 相关阅读:
    [转]游戏开发指南
    [转]C++接口定义及实现举例
    [转]关于模板函数/模板类编译成DLL
    [转]游戏程序员要求
    [转]如何定位Release程序崩溃原因
    [转]对0基础MFC者的一点建议
    [转]链接警告 LNK4098
    动态调用WCF
    动态添加删除WCF服务类包
    将Xaml文档转成XPS文档[转]
  • 原文地址:https://www.cnblogs.com/xiaogongjin/p/13376893.html
Copyright © 2020-2023  润新知