《Flask web development》示例4-3中,使用Flask-WTF和Flask-Bootstrap渲染表单
{% extends "base.html" %} {% import "bootstrap/wtf.html" as wtf %}
想问下什么情况下用extends什么情况下用import?两者有什么区别?
认证0级讲师
我來做個筆記:extend繼承的模板主要用途是子模板引用它的結構,補充其中的塊內容。
extend
import引用的模板主要为了在子模板中引用它的变量,宏函数等。类似import os這樣的用法,所以,你也能定義同名的巨集函數。 bootstrap/wtf.html源碼
import
import os
題主在stackoveflow上的提問連結:what are the differences between import and extends in Flask?
extends表示繼承,import表示引用,繼承是能更改原有內容的,而引用則不會
extends一般用在模板調用中,比如你的base.html裡面的內容是網頁的主框架,在頂部有按鈕啊,導航等而你在其他的頁面,比如xxxxx.html裡面,基本框架都一樣,而只需要修改一下頁面的內容,那你就不必每次都在xxxxx.html裡面重複寫主框架的程式碼,而只要透過繼承自base.html就可以達到「複製」主框架的作用
而import一般是用來引用模組或是功能例如我們平常用得最多的import os就是引入標準os模組
我來做個筆記:
extend
繼承的模板主要用途是子模板引用它的結構,補充其中的塊內容。import
引用的模板主要为了在子模板中引用它的变量,宏函数等。类似import os
這樣的用法,所以,你也能定義同名的巨集函數。 bootstrap/wtf.html源碼題主在stackoveflow上的提問連結:what are the differences between import and extends in Flask?
extends表示繼承,import表示引用,繼承是能更改原有內容的,而引用則不會
extends一般用在模板調用中,比如你的base.html裡面的內容是網頁的主框架,在頂部有按鈕啊,導航等
而你在其他的頁面,比如xxxxx.html裡面,基本框架都一樣,而只需要修改一下頁面的內容,那你就不必每次都在xxxxx.html裡面重複寫主框架的程式碼,而只要透過繼承自base.html就可以達到「複製」主框架的作用
而import一般是用來引用模組或是功能
例如我們平常用得最多的import os
就是引入標準os模組