Objektverzeichnis während we:write erstellen
Objektverzeichnis während we:write erstellen
Moin Moin,
ich würde vor dem Schreiben von Objekten mit we:write gerne prüfen, ob ein Objektverzeichnis vorhanden ist und falls nicht dieses anlegen.
Bin ich richtig in der Annahme, dass es mit WE Bordmitteln nicht möglich ist Objektverzeichnisse zu erstellen?
Generell gibt es so eine Funktion wie das automatische generieren von Verzeichnissen bei Dokumenten (Definiert im Dokumenten-Typ), nicht bei Objekten, richtig?
Lieben Gruß
Finn
ich würde vor dem Schreiben von Objekten mit we:write gerne prüfen, ob ein Objektverzeichnis vorhanden ist und falls nicht dieses anlegen.
Bin ich richtig in der Annahme, dass es mit WE Bordmitteln nicht möglich ist Objektverzeichnisse zu erstellen?
Generell gibt es so eine Funktion wie das automatische generieren von Verzeichnissen bei Dokumenten (Definiert im Dokumenten-Typ), nicht bei Objekten, richtig?
Lieben Gruß
Finn
Re: Objektverzeichnis während we:write erstellen
Hi Finn,
nope, gibt es so nicht. Du könntest mit path_to_id prüfen, ob du eine Ids bekommts, dann gibt es das Verzeichnis, Wenn nicht, musst du das Verzeichnis anlegen. Müsste so in diese Richtung funktionieren.
VG, Timo
nope, gibt es so nicht. Du könntest mit path_to_id prüfen, ob du eine Ids bekommts, dann gibt es das Verzeichnis, Wenn nicht, musst du das Verzeichnis anlegen. Müsste so in diese Richtung funktionieren.
Code: Alles auswählen
$dir = new we_folder_objectFile();
$dir->we_new($parentId, (string)$name);
$dir->we_save();
webEdition Partner - https://www.blickfang-media.com
Ehemals im Vorstand des webEdition e.V.
Ehemals im Vorstand des webEdition e.V.
Re: Objektverzeichnis während we:write erstellen
Moin Timo,
danke für die Anregung. Allerdings prüft path_to_id nur die Dokumentenverzeichnisse oder auch Objekte?
LG
Finn
danke für die Anregung. Allerdings prüft path_to_id nur die Dokumentenverzeichnisse oder auch Objekte?
LG
Finn
Re: Objektverzeichnis während we:write erstellen
berechtigte Frage
die Funktion hat einen zweiten Parameter, da kann man den Table mitgeben, den man abfragen möchte
Für Objekte müsste das dann OBJECT_TABLE sein
Grüße, Timo
die Funktion hat einen zweiten Parameter, da kann man den Table mitgeben, den man abfragen möchte
Code: Alles auswählen
path_to_id(string $path, string $table = FILE_TABLE)
Code: Alles auswählen
path_to_id('meinpfad/such/es', 'OBJECT_TABLE')
webEdition Partner - https://www.blickfang-media.com
Ehemals im Vorstand des webEdition e.V.
Ehemals im Vorstand des webEdition e.V.
Re: Objektverzeichnis während we:write erstellen
So funktioniert es:
Code: Alles auswählen
path_to_id('/pfad/den/ich/suche', 'tblObjectFiles');
Re: Objektverzeichnis während we:write erstellen
wenn die Table als Constante übergeben wird, sollte es auch klappen, war als String gecastet, sorry
Damit bist du updatesicerer, sollte sich die Bezeichnung der Tabelle einmal ändern
Code: Alles auswählen
path_to_id('meinpfad/such/es', OBJECT_TABLE)
webEdition Partner - https://www.blickfang-media.com
Ehemals im Vorstand des webEdition e.V.
Ehemals im Vorstand des webEdition e.V.
Re: Objektverzeichnis während we:write erstellen
Passt, danke!biwaMedia hat geschrieben: ↑Mo 17. Okt 2022, 15:33 Hi Finn,
nope, gibt es so nicht. Du könntest mit path_to_id prüfen, ob du eine Ids bekommts, dann gibt es das Verzeichnis, Wenn nicht, musst du das Verzeichnis anlegen. Müsste so in diese Richtung funktionieren.
VG, TimoCode: Alles auswählen
$dir = new we_folder_objectFile(); $dir->we_new($parentId, (string)$name); $dir->we_save();
-
- webEdition Partner
- Beiträge: 1825
- Registriert: Di 7. Mär 2006, 16:50
- Wohnort: Wien
- Kontaktdaten:
Re: Objektverzeichnis während we:write erstellen
Hey,
In einem wE8 Projekt haben wir das mit initByPath() gelöst:
Ist der Pfad noch nicht vorhanden, wird er damit gleich angelegt. Ob das mit wE9 noch funktioniert, habe ich noch nicht probiert.
Liebe Grüße,
Sascha
In einem wE8 Projekt haben wir das mit initByPath() gelöst:
Code: Alles auswählen
// get object folder or create it on the fly
$objFolder = new we_class_folder();
$objFolder->initByPath('/pfad/zum/objekt');
$objFolder->we_save();
$folderId = $objFolder->ID;
Liebe Grüße,
Sascha
Re: Objektverzeichnis während we:write erstellen
Hey Sascha,
hab grad nachgeschaut, die initByPath gibts ind er we9 auch und ist auch public, kann also funktionieren! Das ist noch schicker als vorher selbst abzufragen. Der Folder wird laut methode angelegt wenn er noch nicht existiert und das sogar recursiv.
Als Rückgabe müsste das object zur Verfügung stehen, so dass man darüber dann auch wieder direkt die Id bekommen kann, die der Folder verpasst bekommen hat.
Gruß, Timo
hab grad nachgeschaut, die initByPath gibts ind er we9 auch und ist auch public, kann also funktionieren! Das ist noch schicker als vorher selbst abzufragen. Der Folder wird laut methode angelegt wenn er noch nicht existiert und das sogar recursiv.
Als Rückgabe müsste das object zur Verfügung stehen, so dass man darüber dann auch wieder direkt die Id bekommen kann, die der Folder verpasst bekommen hat.
Gruß, Timo
webEdition Partner - https://www.blickfang-media.com
Ehemals im Vorstand des webEdition e.V.
Ehemals im Vorstand des webEdition e.V.
Re: Objektverzeichnis während we:write erstellen
Das wäre natürlich sexy, guck ich mir nochmal an!
Re: Objektverzeichnis während we:write erstellen
Die Konstante geht aus irgendeinem Grund nicht...biwaMedia hat geschrieben: ↑Mo 17. Okt 2022, 17:35 wenn die Table als Constante übergeben wird, sollte es auch klappen, war als String gecastet, sorryDamit bist du updatesicerer, sollte sich die Bezeichnung der Tabelle einmal ändernCode: Alles auswählen
path_to_id('meinpfad/such/es', OBJECT_TABLE)
Wer ist online?
Mitglieder in diesem Forum: Ahrefs [Bot] und 1 Gast