簡體   English   中英

模板中的Django對象查找

[英]Django object lookups in templates

我正在閱讀Django項目教程,在節中它說:

模板系統使用點查找語法來訪問變量屬性。 在{{question.question_text}}的示例中,首先Django對對象問題進行字典查找。 如果失敗,它將嘗試屬性查找-在這種情況下可以工作。 如果屬性查找失敗,它將嘗試進行列表索引查找。

這是否意味着Django question是一個字典對象,並且在第一個實例中,將question_text作為鍵,如果找到,則返回值? 除此之外,我無法想象這兩個后備選項的作用。

這是否意味着Django question是一個字典對象,並且在第一個實例中,將question_text作為鍵,如果找到,則返回值? 除此之外,我無法想象這兩個后備選項的作用。

question並不一定是文字dict對於第一種選擇工作。 它必須像字典一樣。 也就是說, question['question_text']在Python中有效。

第一個后備廣告是指常規的Python點表示法。 例如,如果以下任何一種在Python中都有效:

question.question_text  # or
question.question_text()

然后question.question_text將在返回Python值的模板中工作。 注意,兩種情況都省略括號。

最后的后備方法是數字索引。 例如,如果question是一個列表並且在Python中有效:

question[0]

然后question.0 question[0]將在模板中工作,返回question[0]的值。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM