Django rest框架用于重写post方法的自定义修饰符
我的大多数ModelViewSet都重写了create方法(创建对象时需要执行其他操作) 我还想为那些create方法定义一个decorator函数,例如:Django rest框架用于重写post方法的自定义修饰符,django,python-2.7,django-rest-framework,decorator,Django,Python 2.7,Django Rest Framework,Decorator,我的大多数ModelViewSet都重写了create方法(创建对象时需要执行其他操作) 我还想为那些create方法定义一个decorator函数,例如: def post_shower(func): @wraps(func) def wrapper(*args, **kwargs): result = func(*args, **kwargs) print result return result return wrap
def post_shower(func):
@wraps(func)
def wrapper(*args, **kwargs):
result = func(*args, **kwargs)
print result
return result
return wrapper
基本上我需要响应状态、标题、新对象数据。当我运行这个代码时,我得到
ContentNotRenderedError: The response content must be rendered before it can be accessed.
在
print result
关于如何在decorator中获取数据有什么建议吗?
谢谢通过
响应访问新对象数据。数据
和状态通过响应。状态代码
。通过响应对象的类似dict的接口一个接一个地访问标题。或者通过响应非正式地一次抛出所有错误。_headers
也许您可以提供更多关于哪个代码段实际抛出错误的详细信息,第一个还是第二个。在任何情况下,如果视图返回templaterresponse
,则应手动调用render()
,以访问其内容,因为它不会自动调用
print result