NEWS
index_m.html - wo und wie werden die Werte gespeichtert?
-
Hi zusammen,
wenn ich im index_m.html folgendes input habe:
<div class="input-field col s12 m6 l4"> <input id="host" type="text" size="30" class="value" /> <label class="translate" for="host">host</label> </div>
wo wird dann der value geschrieben?
Ich finde den Wert weder im Adapter.0, noch unter system.adapter.Adapter.0habe auch mal einen Blick ins iobroker/node_modules/iobroker.admin/www/js/adapter-settings.js reingeschaut, aber als Unwissender findet mir da noch zu viel Magie statt.
-
@jampr sagte in index_m.html - wo und wie werden die Werte gespeichtert?:
als Unwissender findet mir da noch zu viel Magie statt.
was machst du dann mit der index_m.html?
Was erwartest du dort?
-
@jampr wenn die Klasse
value
definiert ist, wird über dieid
das Input Feld mit den Einstellungen geladen und dann auch wieder gespeichert. Du solltest oben im index_m.html die zwei Funktionenload()
undsave()
definiert haben.Hier ein Beispiel:
https://github.com/UncleSamSwiss/ioBroker.loxone/blob/e1cf009eea6eb661c57b1362c944b8ddd59400b6/admin/index_m.html#L20-L54 -
@UncleSam
genau, die sind so definiert. Ich kann da auch Werte eingeben. Aber wo werden die gespeichert?@Homoran
Ich erwarte, unter dem neuen Adapter diese Eingabe in einem State zu finden. Da sie nicht da sind, wo werden sie denn dann gespeichert, wenn ich auf save drücke?Und auch wenn ich den iobroker neu starte, bleiben die eingegebenen Werte vorhanden.
-
@jampr sagte in index_m.html - wo und wie werden die Werte gespeichtert?:
Ich erwarte, unter dem neuen Adapter diese Eingabe in einem State zu finden.
Nein, dem ist nicht so. Die Konfiguration wird im Objekt gespeichert:
system.adapter.<name>.<instanz>
und dort unternative
. Grundsätzlich ist das aber nicht sehr relevant, da du ja in der Adapter Klasse direkt auf die schon geladene Konfiguration zugreifen kannst; auch im index_m.html werden die Daten ja für dich geladen/gespeichert. -
@jampr
Als Ergänzung:
Wenn du einen eigenen Adapter erstellst, dann kannst du in der package.json, ebenfalls unter native die Attribute mit ihren initialen Werten definieren.und nicht vergessen. Das ändern und speichern der Werte erzwingt einen Restart der Adapterinstanz. durch iobroker.
Daher für diese Art der Speicherung immer nur echte Konfigurationsdaten verwenden. Für volatilere Werte immer Datenpunkte oder bei größeren Datenumfängen eine eigene Datei verwenden. -
Aaah. Im Instance-Folder is das. Danke.
Also brauche ich für den Adapter selbst gar kein State mit den 'grundlegenden' Einstellungen.Dann weiß ich erstmal bescheid.