2012-09-06 2 views
0

django.utils.functional 가져 오기 랩과 functools 가져 오기 랩 사이의 기능상의 차이점은 무엇입니까?django.utils.functional에서 가져 오기 wraps 및 functools 가져 오기에서 랩

내가 장고 1.3을 사용하고 있습니다 및 파이썬 2.4.i 포스트 데이터에서 중요한 정보를 제거 할하지만 난 소스 코드를 복사 https://bitbucket.org/orzel/django-1.4-production/src/507b10c2c0e3/django/views/decorators/debug.py에서 내 프로젝트에 넣어에만 장고 1.4.So에서 사용할 수 django.views.decorators.debug입니다. 하지만이 데코레이터는 파이썬 2.4.so에서 사용할 수없는 functools를 사용합니다. 대신 functools import wraps.yut에서 여전히 django.utils.functional import wrap을 사용합니다. 그러나 여전히 민감한 정보는 오류 메일에 나타 납니까? 어떤 제안?

답변

1

차이가 있다고 생각하지 않습니다. functools.wraps을 지원하지 않는 구형 Python 버전의 백 포트 일 가능성이 높습니다.

장고 functools를 지원하지 않는 이상 파이썬 버전을 지원하지 않습니다 최신 이후

사실 편집 내가 생각하는 그 단지 가능한 종속성 문제 (장고 또는 장고 프로젝트) 거기에 떠났다. 사실은 심지어 바로 지금 functools.wraps를 가져 오는 중입니다 http://code.djangoproject.com/svn/django/trunk/django/utils/functional.py

+0

장고 1.3 파이썬 2.4.i 포스트 데이터에서 중요한 정보를 제거 할하지만 난 복사에만 장고 1.4.So에서 사용할 수 django.views.decorators.debug이다 사용하는 메신저 소스 코드를 https://bitbucket.org/orzel/django-1.4-production/src/507b10c2c0e3/django/views/decorators/debug.py에서 프로젝트에 넣으십시오. 하지만이 장식은 파이썬 2.4.so에서 사용할 수없는 functools를 사용합니다. 대신 functools import wraps.dut 대신에 django.utils.functional import wrap을 사용합니다. 여전히 민감한 정보가 오류 메일에 나타 납니까? 어떤 제안? – shiva

+0

Django 1.4를 Python 2.5와 함께 사용하면 더 많은 종속성 문제가 발생할 수 있습니다. Django 1.4에서는 더 이상 지원되지 않습니다. 나는이 특별한 문제에 대한 정보를 정말로 줄 수는 없다. 레드햇이나 CentOS에서 프로덕션을 운영하고 계신지요? –

+0

예. CentOS에서 실행 중입니다. – shiva

1

이는 장고 장식을 사용하여 순진한 자기 반성을 수정 5 년 전에 구현되었다 :

http://code.djangoproject.com/ticket/5701

가 뒤에있는 동기 부여 버그의 세부 사항을 참조하십시오.

그것은처럼 사용 :

try: 
    from functools import wraps 
except ImportError: 
    from django.utils.functional import wraps # Python 2.3, 2.4 fallback. 
관련 문제