找回密碼
 立即註冊
惟家LINE群QRCODE
    查看: 4|回覆: 0

    範本(Template)入門:先學這三個就夠用了

    [複製鏈接]

    !lvup!   100%

    363

    主題

    27

    回帖

    2200萬

    積分

    管理員

    積分
    22005752
    發表於 3 天前 | 顯示全部樓層 |閱讀模式
    範本看起來很可怕(一堆大括號),但其實日常會用到的就那幾個



    ■ 先去這裡練習,不用重啟

    開發者工具 → 範本

    左邊貼上去,右邊立刻顯示結果。改一個字就馬上看到差別,比改設定檔重啟快一百倍。

    ■ 第一個:拿某個東西的狀態
    1. {{ states('sensor.客廳溫度') }}
    複製代碼

    回傳的是文字,不是數字。這點很重要,下面會說。

    ■ 第二個:拿屬性

    狀態只有一個,但屬性可以有很多個。例如一盞燈:
    1. {{ state_attr('light.客廳主燈', 'brightness') }}
    複製代碼

    要知道有哪些屬性可以拿,去「開發者工具 → 狀態」點那個實體就看得到。

    ■ 第三個:時間判斷
    1. {{ now().hour }}        → 現在幾點(0-23)
    2. {{ now().weekday() }}   → 星期幾(0=週一)
    複製代碼

    拿來做「只有平日早上才執行」這種條件很好用。

    ■ 最常見的錯誤:忘記轉型

    這個一定要記住:
    1. {{ states('sensor.溫度') > 28 }}          ← 錯!在比文字
    2. {{ states('sensor.溫度') | float > 28 }}  ← 對
    複製代碼

    加上 | float 把文字轉成數字,不然你會遇到「明明 9 度卻判斷成大於 28」這種鬼故事
    (因為文字比大小是一個字一個字比的,"9" 確實大於 "2")。

    保險一點的寫法是給預設值,避免實體不可用的時候整個炸掉:
    1. {{ states('sensor.溫度') | float(0) > 28 }}
    複製代碼

    有卡住的範本可以貼上來,我們一起看。
    您需要登入後纔可以回帖 登入 | 立即註冊

    本版積分規則

    Archiver|手機版|惟家的智能論壇

    GMT+8, 2026-9-24 12:21 , Processed in 0.077202 second(s), 24 queries .

    快速回覆 返回頂部 返回列表