Guten Tag und frohen 1. Advent zusammen,
ich beschäftige mich nun seit einer Weile - mehr oder weniger durchgehend - mit Home Assistant und bin im Moment dabei ein Dashboard mit verschiedenen Komponenten aufzubauen. Nun stoße ich hierbei aber immer wieder auf dieses eine Problem, welches mich seit einer Weile beschäftigt. Ich versuche es zunächst einmal so generell wie möglich zu beschreiben: Wie kann ich herausfinden, ob (und wie) ich innerhalb einer Card auf das zugrundeliegende Entity zugreifen kann?
Beispiel:
- type: custom:mushroom-template-badge
entity: binary_sensor.basement_dryer_state
icon: '{{ "mdi:tumble-dryer" if states(entity) else "mdi:tumble-dryer-off" }}'
color: |
{{ 'green' if is_state(entity, 'on') else 'grey' }}
Hier verweise ich innerhalb des icon und des color Attributs auf "entity” - welches auf das in der Card definierte Entity verweist. Das funktioniert auch wie gewollt.
In diesem Beispiel scheint das ganze aber (laut System Logs) nicht zu funktionieren:
card:
type: custom:mushroom-chips-card
chips:
- type: entity
tap_action:
action: more-info
entity: sensor.pixel_8_pro_battery_level
content_info: none
card_mod:
style: |
ha-card {
--chip-background: {{ 'var(--contrast1)' if states(entity) | float > 10 else 'var(--red)' }};
--color: {{ 'var(--contrast20)' if states(entity) | float > 10 else 'var(--black)' }};
padding: 0px!important;
border-radius: 100px!important;
box-shadow: none !important;
--primary-text-color: var(--contrast20);
Der Error im Log:
Template variable error: ‘entity’ is undefined when rendering 'ha-card’
Also gehe ich davon aus, dass die Referenz auf “states(entity)” bzw. “is_state(entity, ‘’)” nicht generell funktionieren. Daraus leitet sich für mich ab: Wie genau kann ich nachvollziehen, ob (und wenn ja, wie) eine Card bzw. eine Custom-Component diese Art von selbstreferenz unterstützt?
Vielen lieben Dank im Voraus und einen schönen Tag euch.