Ankündigung

Einklappen
Keine Ankündigung bisher.

Itemtyp dict: value Werte richtig vorgeben?

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

    Itemtyp dict: value Werte richtig vorgeben?

    kann mir bitte einer helfen? stehe völlig auf dem Schlauch.
    SmarthomeNG 1.7

    ich berechne mittels DIN Logik den sommer, die Werte sollen remanent bleiben.
    Wo ist mein Fehler?

    2020-04-07 11:05:02 ERROR lib.item Item sommer.digits: value [] does not match type dict.

    Item:
    Code:
    sommer:
    type: bool
    cache: True
    knx_dpt: 1
    knx_send: 0/2/3
    knx_listen: 0/2/3
    digits:
    #werte von 7.00|14.00|22|gestern|vorgestern
    type: dict
    cache: True
    value: '{"07":"0","14":"0","22":"0","-1":"0","-2":"0"}'
    never fummel a running system...

    #2
    Moin,

    Du hast value einen String zugewiesen und kein dict (Einfach die äußeren Quotes weglassen).
    Zuletzt geändert von bmx; 07.04.2020, 10:54.
    Viele Grüße
    Martin

    There is no cloud. It's only someone else's computer.

    Kommentar


      #3
      Hallo ich habe ein sh-item mit einen dict

      Code:
      szene:
          type: dict
          value: {'name': 'Nacht', 'nr': 1, 'aktiv': false}
      ich möchte in einer logic den wert(value) von 'aktiv' von false auf true ändern.

      Code:
      ich mache das so:
      myDict = szene()   # dict aus sh-item lesen
      myDict['aktiv'] = true #Inhalt ändern
      szene({}) # neues dict im item anlegen
      szene(myDict) # geändertes dict in item schreiben
      geht das auch irgendwie kürzer?
      z.B.
      Code:
      szene()['aktiv']= false
      Gruß Ivan

      Kommentar


        #4
        Ob das kürzer geht, kann ich im Moment nicht sagen (ohne mich da tiefer reinzudenken). Dein Vorschlag geht definitiv nicht. Das kannst Du auch im eval Syntax Prüfer der AdminGUI testen. Es gibt im Moment keinen Syntax um bei komplexen Datentypen von Items (dict, list) einen "Sub-Value" zuzuweisen.
        Viele Grüße
        Martin

        There is no cloud. It's only someone else's computer.

        Kommentar


          #5
          Hallo,

          ich kann den eval syntax checker nur empfehlen!
          Ein tolles TOOL!

          Danke Martin!

          Kommentar

          Lädt...
          X