我启动了一个django应用程序,我需要将日志模块用于我的应用程序
这是setting.py中的(LOGGING部分),我没有更改任何内容。
LOGGING = {
'version': 1,
'disable_existing_loggers': False,
'handlers': {
'mail_admins': {
'level': 'ERROR',
'class': 'django.utils.log.AdminEmailHandler'
}
},
'loggers': {
'django.request': {
'handlers': ['mail_admins'],
'level': 'ERROR',
'propagate': True,
},
}
}
我在与模型相同的目录中有一个名为categories.py的文件,这是categories.py的代码
import logging
from django.template import RequestContext
from django.shortcuts import render_to_response
from models import Task
from models import Category
from models import Subcategory
logger = logging.getLogger(__name__)
def li():
logger.error('Finished')
def categories(request):
all_categories = Category.objects.all()
return render_to_response('categories/view all categories & tasks.html', {'all_categories': all_categories},RequestContext(request))
我在models.py所在的目录中有另一个名为myapl2.py的文件,这是代码
import logging
import categories
def main():
logging.basicConfig(filename='myapp.log',format='%(message)s,%(asctime)s',datefmt='%m/%d/%Y %I:%M:%S %p',level=logging.DEBUG)
categories.li()
if __name__ == '__main__':
main()
在cmd中,当我cd到这个目录并运行myapl2.py时出现错误,
导入类别时似乎存在问题,
我在cmd中得到以下内容:
来自django.shortcuts导入render_to_response
提升错误:无法导入设置,因为无法定义环境变量
答案 0 :(得分:0)
如果你刚刚做了python myapl2.py这个错误,请阅读https://docs.djangoproject.com/en/dev/topics/settings/#using-settings-without-setting-django-settings-module
答案 1 :(得分:0)
首先要做的事情是:编写这样一个独立脚本的最简单方法是使用manage.py subcommand。
关于您的代码的两条评论:
在myapl2.py中,您正在设置日志记录。 Django使用您的LOGGING设置也是如此。这两个人可能互相咬人。
并且(可能是复制/粘贴错误):在categories.py的logging = ...
行前面有一个空格,这也可能会给您一个错误。