Seite 1 von 1

Dateisystem aktualisieren mit ExternalFile

Verfasst: Montag 2. Juni 2008, 12:54
von danius
Hallo Leute.

Ich habe in Zope ExternalFile eingebunden, um Dateien von Filesystem online zugänglich zu machen.
Wenn jetzt im "veröffentlichten" Verzeichnis eine neue Datei entsteht wird sie nicht automatisch mit ExternalFile eingebunden - Man müsste jedes neue File händisch hinzufügen.
Wie kann ich das am besten automatisieren, damit immer das aktuelleste Filesystem online ist und somit die Daten auf dem neuesten Stand?

Wahrscheinlich brauche ich eine externe Methode, die das Filesystem durchläuft und die Dateien mit ExternalFile hinzufügt :? .

Im Order "extras" unter ExternalFile befinden sich ein Script (uploadCreate.py) mit dem man eine Datei ohne die GUI uploaden kann. Zur Zeit habe ich mit diesem herumexperimentiert und dies könnte man ja in die externe Methode einbauen.

Code: Alles auswählen

retval = "<html><head><title>UploadCreate Results</title></head>"
    
if not target_filepath or not upload_file or not upload_file.filename:
    retval += "<h2>ERROR</h2><div>Missing required parameter</div>" + \
              "</body></html>"
else:
    efid = target_filepath
    efid = efid[max(string.rfind(efid,'/'), 
                    string.rfind(efid,'\\'), 
                    string.rfind(efid,':')
                    )+1:]
    
    container.manage_addProduct['ExternalFile'].addExternalFile(efid, '', '',
                                                                target_filepath,'',
                                                                upload_file)
    
    retval += "<html><head><title>UploadCreate Results</title><body>" + \
              "<h2>SUCCESS</h2>" + \
              "<div>Created new ExternalFile instance with the following attributes:</div>" + \
              "<div>ID: " + str(efid) + "</div>" + \
              "<div>target_filepath: " + str(target_filepath) + "</div>" + \
              "<div>upload_file: " + str(upload_file.filename) + "</div>" + \
              "</body></html>"

return retval