2010-06-02 5 views
0

필자는 웹 개발 프레임 워크에 Pylons를 사용합니다. Pylons의 대화 형 디버거를 사용하여 오류를 디버깅 할 때마다 세션에 바인딩되지 않은 변수 등에 관한 다음 유형의 오류가 포함 된 추적 코드를 인코딩합니다.Pylons 대화 형 디버거 UnboundExecutionError

UnboundExecutionError : 인스턴스가 세션에 바인딩되지 않았습니다. ; 특성 새로 고침 작업을 진행할 수 없습니다.

이 오류가 발생하면이 오류 유형의 영향을받는 변수 등이 대화 형 디버거 프롬프트와 동일한 내용을 출력 할 수 없습니다. 그러나 터미널에서 실행중인 셸 (shell)에이 정보를 기록 할 수 있습니다. 아무도 비슷한 것을 만나거나이 오류가 발생하는 이유를 말할 수 있습니까?

답변

0

SQLAlchemy 오류입니다. 이를 피하려면 예외가 발생하기 전에 모든 객체 속성을 열심히로드 한 다음 해당 객체를 검사 할 수 있어야합니다.

AFAIU이 오류는 BaseController가 예외가 발생했을 때 세션을 파괴하기 때문에 발생합니다 (try :/finally : meta.Session.remove()를 호출하는 문이 있음). 따라서 디버거를 사용하면 세션이 이미 사라지고 해당 세션과 연결된 객체는 더 이상 액세스 할 수 없습니다.