NEWS
[Gelöst] Mal wieder IDs vom Selektor
-
Ich habe noch mal eine Frage, die nur indirekt mit IDs vom Selektor zusammenhängt. Wenn ich alle Mitglieder (members) einer Aufzählung mit der id "enum.functions.Button" ausgeben will, dann kann ich das problemlos im Selektor mit (functions=Button) machen.
Aber wie adressiert man eine verschachtelte Aufzählung wie "enum.functions.house.light"? -
@ofbeqnpolkkl6mby5e13 sagte: wie adressiert man eine verschachtelte Aufzählung wie "enum.functions.house.light"?
Ich habe zwar keine "verschachtelten" Aufzählungen, aber funktioniert es nicht mit (functions=house.light)?
Ich würde auch nicht verschachteln, sondern "enum.rooms.house" zuweisen. -
@paul53
Nein, das funktioniert leider nicht.Ich muss ein Zweifamilienhaus mit 3 Wohnungen abdecken. Ohne eine strukturierte Aufzählung bin ich "verloren".
-
@ofbeqnpolkkl6mby5e13 sagte: Ohne eine strukturierte Aufzählung bin ich "verloren".
Die Aufzählungen sind nicht für "Verschachtelung" ausgelegt. Man kann höchstens über die Namen strukturieren, z.B. mittels Unterstrich im Namen "house_light".
-
@paul53
Okay, danke!Allerdings stellt sich dann schon die Frage, weshalb man die dann überhaupt verschachteln kann...
-
@ofbeqnpolkkl6mby5e13 sagte: weshalb man die dann überhaupt verschachteln kann...
Kann man das? Wenn ich eine ID mit Punkt eingebe, wird daraus automatisch ein Unterstrich. Bei Erstellung im Tab "Objekte" wird allerdings nicht geprüft.
-
@paul53
Ja, man kann einfach entweder eine Aufzählung mit der Maus auf eine andere ziehen oder direkt eine Art "Unterkategorie" einer Aufzählung erstellen. Jeweils wird die ID vererbt.Mein Gedanke war:
Haus - Licht - Obergeschoss - Küche - Erdgeschoss - Küche - Keller - Küche - Fenster - Obergeschoss - Küche - Erdgeschoss - Küche - Keller - Küche - Steckdose - Obergeschoss - Küche - Erdgeschoss - Küche - Keller - Küche
usw.
-
@ofbeqnpolkkl6mby5e13 sagte: Mein Gedanke war:
Aus diesem Gedanken würde ich die Gewerke Licht, Fenster, Steckdosen und die Räume (Orte) Haus1_OG_Kueche, Haus1_EG_Kueche, Haus1_Keller_Kueche machen.
Wenn man mit Alias arbeitet, kann man auch die IDs entsprechend strukturieren, was den Vorteil hat, dass man im Selektor Wildcards (*) verwenden kann. -
@paul53
Okay, danke. Aliase habe ich in der Form natürlich bereits vorliegen. -
@paul53
Ob es sich lohnt, einen neuen Thread zu erstellen, um mal von einem Entwickler zu hören, weshalb man Aufzählungen mit der GUI verschachteln kann, diese dann aber nicht absolut adressieren kann?Edit:
Oder ist das eher ein Problem des Blockly-Bausteins?
Gibt es dazu eine Javascript-Funktion?Edit2:
Geht mit Javascript auch nicht:var i; var i_list = Array.prototype.slice.apply($("(functions=house.light)")); for (var i_index in i_list) { i = i_list[i_index]; console.log(i); }
-
@ofbeqnpolkkl6mby5e13 sagte: Geht mit Javascript auch nicht:
Ich hatte es mit Javascript getestet.
-
@paul53
Ah, okay. -
@Bluefox @foxriver76 @apollon77
Man kann mit dem Admin eine solche Aufzählungshierarchie erstellen. Abfragen kann man sie allerdings nicht. Wieso nicht?
-
@ofbeqnpolkkl6mby5e13 Inwiefern nicht abfragen? Wie im Objekte Tab auch stellt jeder . eine neue Hierarchie dar. Oder meinst du es fehlt eine convinience Funktion im Script Adapter?
-
@foxriver76
Mit dem Blockly-Baustein "IDs vom Selektor" oder direkt mittels Javascript kann man solche Aufzählungen abfragen. Die Mitglieder der Aufzählung werden dann dadurch ermittelt. Das geht aber nur auf der ersten Ebene. In dem obigen Bild mit "enum.functions.house" schon "enum.functions.house.light" funktioniert leider nicht. -
@ofbeqnpolkkl6mby5e13 Ich denke eher das es ein Bug ist das man so tiefe enums erstellen kann. Aller code den Ich kenne geht von "zwei ebenen" aus ... Daher würde ich da über ein Admin Issue freuen
-
@apollon77
Genau so sieht es auch @paul53
Ich kann das akzeptieren, kein Problem. Ich wundere mich ausschließlich, dass sich @Bluefox die Arbeit gemacht hat, das in den Admin rein zu programmieren.Ich mache gerne ein issue auf.
-