>  Q&A  >  본문

python - 关于flask模板中使用url_for() 和 vuejs 冲突的问题 ?

由于vue的 {{}} 和jinja 冲突 所以我把 vue的改成了 {[]}

{{url_for('static', filename='{[id]}.jpg')}}

然后输出是

/static/%7B%5Bid%5D%7D.jpg

想了个很蠢的办法

{{ url_for('static', filename='{[id]}.jpg').replace('%7B%5B','{[').replace('%5D%7D',']}')}}
天蓬老师天蓬老师2741일 전842

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

  • 阿神

    阿神2017-04-18 09:43:15

    첫 번째 해결책은 jinja2의 구문을 변경하는 것이지만 권장되지는 않습니다

    으아악

    이렇게 하면 Jinja2의 변수 구분 기호를 "${}"로 변경할 수 있으며, 물론 더 많은 설정도 가능합니다. 그러나 이는 서버 측 템플릿 작성자에게 익숙하지 않을 뿐만 아니라 이러한 유형의 템플릿을 작성하는 일부 편집자가 이 기호를 인식하지 못한다는 것이 더 심각한 문제입니다.

    가장 좋은 해결책은 VUE의 구문을 변경하는 것입니다. 저는 모든 프로젝트에서 이렇게 정의하고 VUE 코드 앞에만 작성하므로 코드 마이그레이션에 문제가 없습니다

    으아악

    회신하다
    0
  • 高洛峰

    高洛峰2017-04-18 09:43:15

    JinJa의 {{}}를 {{ xx }}로 엄격하게 제한할 수 있습니다. 내 프로젝트는 모두 이렇게 설정됩니다

    으아악

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