我有一个 Django 应用程序,我向它添加了 Django 日志对象,我遵循此文档https://code.osuosl.org/projects/django-object-log/wiki/Usage#Registering-Action-Types
我正在文档中添加日志条目给出了以下如何在def方法中添加日志的示例,这是示例:
# store log_action for faster access
log = LogItem.objects.log_action
def my_view(request, pk):
""" example view that retrieves an object by its pk """
obj = SomeModel.objects.get(pk=pk)
log('MY_EVENT', request.user, obj)
tasks.py 是我的应用程序中的视图,这是一个我想添加日志调用的定义
def edit_task(request, task_id):
t = get_object_or_404(Task, pk=task_id)
t.category = request.POST['cat_dd']
t.subcategory = request.POST['subcat_dd']
t.name = request.POST['task_name']
t.description = request.POST['task_desc']
t.country = request.POST['country_dd']
t.city = request.POST['task_city']
t.address = request.POST['task_address']
t.status = request.POST['status_dd']
log('MY_EVENT', request.user, t)
if (employer_id == NULL or getcategory == "Please select a category" or getsubcategory == "Please select a subcategory" or getname == "" or getdesc == "Write a short description about your task.." or getcountry == "(please select a country)" or getcity == "" or getaddress == "" or getstatus == ""):
return render_to_response('editTask.html',RequestContext(request))
else:
t = Task.objects.create(employer = employer_id, category = getcategory, subcategory = getsubcategory, name = getname, description = getdesc, country = getcountry, city = getcity, address = getaddress, status = getstatus, contractor = NULL)
t.save()
return render_to_response('task.html',RequestContext(request))
在以前的代码中添加此行log('MY_EVENT', request.user, t)
后,我收到错误
我收到错误unexpected indent (tasks.py, line 58)
该错误的原因可能是什么?
您很可能在源文件中混合了制表符和空格。您可以手动检查,或者像pyflakes这样的工具可以自动为您完成。
对于有关寄存器函数的错误,您需要调用:
from object_log.models import LogAction
LogAction.objects.register('MY_EVENT','template.html', build_cache)