>  Q&A  >  본문

python - flask中,instance_path参数的存在意义是什么呢?

flask的Flask类初始化参数中有一个instance_path,默认为None

在官网上看了相关文档Instance Folders,反复看了几遍还是不太明白其意义何在,看flask相关案例也没有见过使用的。
自己在机器上做了下测试,输出如下:
view函数加一句print current_app.root_path+'\n'+current_app.instance_path,可以得到:

/home/xxx/Documents/flasky/flasky/app
/home/xxx/Documents/flasky/flasky/instance

其跟root_path的区别仅在于最后一个地方由app变成了instance,这参数是0.8版本才加的,意义何在(既然它和root_path基本一样),加了它之后能够实现什么之前所不能实现的东西吗?

黄舟黄舟2741일 전635

모든 응답(1)나는 대답할 것이다

  • 伊谢尔伦

    伊谢尔伦2017-04-18 10:35:26

    문서의 이 단락을 읽은 후, 이 질문에 대한 답을 얻을 수 있을지 궁금합니다.

    인스턴스 폴더는 버전 제어 대상이 아니며 배포에 따라 다르도록 설계되었습니다. 런타임이나 구성 파일에서 변경되는 항목을 삭제하기에 완벽한 장소입니다.

    제가 이해한 바는 프런트엔드 html과 css의 분리와 유사하게 결합을 줄이기 위해 인스턴스 폴더를 기본 폴더와 분리한 것입니다. 폴더에 영향을 주지 않고 나중에 인스턴스를 수정하는 것이 편리합니다. 질문에 언급된 없음은 기본 인스턴스가 루트 폴더 아래에 있고 질문에 해당하는 예제가 플라스크 디렉터리 아래에 있음을 의미합니다.
    이제 새 버전에서는 예를 들어 Flasky 디렉터리와 동일한 수준에서 instance_path 매개변수를 설정하여 특정 위치를 지정할 수 있습니다.

    회신하다
    0
  • 취소회신하다