2010-06-18 6 views
1

데이터베이스에 새 항목을 추가 할 때 (django admin) 사용하고있는 프레임 워크가 새 창을 표시합니다. 새 상자 (지금은 fancybox)를 표시하는 대신 라이트 박스를 사용하고 싶습니다. iframe 옵션을 사용하고 있습니다. 그러나 iframe에서 save를 클릭하면 요청이 서버로 전송되고 서버는 자바 스크립트 코드 opener.dismissAddAnotherPopup (...) 만 포함 된 페이지로 응답합니다. 이 함수는 기본적으로 창을 닫고 부모 (시작점) 창에서 필드를 새로 고칩니다. 오프너가 설정되지 않았으므로 오류를 반환하고 iframe을 닫지 않습니다. iframe에 오프너를 설정하여 어쨌든 null이되지 않도록 할 수 있습니까?iframe에 opener 속성을 설정합니다.

고맙습니다.

제이슨

답변

0

이 방법은 자바 스크립트를 보내는 관리자보기를 재정의하는 것입니다. 이들은 django.contrib.admin.options : ModelAdmin.response_addModelAdmin.response_change 방법에 포함되어 있습니다. 올바른 fancybox closing code를 반환하도록 모델의 admin 클래스에서이를 무시할 수 있습니다.

+0

안녕 다니엘, 답장을 보내 주셔서 대단히 감사합니다. 그러나, 내 주요 문제는 지금이 게시물에 자세히 설명되어 있습니다 (나는 iframe을 가능하면 사용하지 않을 것입니다) : http://stackoverflow.com/questions/3071338/managementform-data-is-missing-or-has-been-tampered- 변경 후 팝업으로 – FurtiveFelon

관련 문제