django 보안 작은 조치 - 템플릿에서 데이터베이스 수정 및 삭제를 비활성화하는 방법

697 단어 django
djangobook 3 봐.py3k.com의 제4장에서django가 디자인한 방법을 우연히 발견하는 과정에서 안전한 조치를 취했다.
간단한 예를 들어 BankAccount 대상에 delete () 방법이 있습니다.BankAccount의 대상에 접근하는 과정에서 권한을 부여해야만 account의 삭제와 수정 작업을 수행할 수 있습니다.템플릿에 {{{account.delete}} 같은 방법을 포함해서는 안 됩니다.이런 일이 발생하지 않도록 Django는 반드시 이 방법의alters를 설정해야 한다데이터 함수 속성:
def  delete(self):
    # Delete the account
delete.alters_data = True

이렇게 하면 템플릿 시스템에서 이 방식으로 표시하는 어떤 방법도 실행하지 않습니다.즉, 템플릿에 {{{account.delete}}이 포함되어 있다면, 이 탭은 delete () 방법을 사용하지 않습니다.그것은 조용히 실패할 뿐이다. (이상을 일으키지는 않는다.)

좋은 웹페이지 즐겨찾기