2012-05-21 7 views

Antwort

1

In der uploadFile-Methode setzen Sie die withParentRev auf Null.

+0

ich die vorhandene Datei überschrieben werden müssen für Argument verwendet werden. Während Sie parentRev erstellen, müssen Sie nicht jedes Mal neue Dateien erstellen. – vandana

+0

Hoppla ... Lars zeigte in die richtige Richtung: Sie müssen zuerst die Metadaten der vorhandenen Datei lesen, um die parentRev-Info zu erhalten. Sie können auch die veraltete Methode uploadFile verwenden: toPath: fromPath: – user523234

+0

Danke, jetzt funktioniert es – vandana

6

Holen Sie sich alle Dateien im Verzeichnis mit [[self restclient] loadMetadata:@"/"]

in den Delegaten - (void)restClient:(DBRestClient *)client loadedMetadata:(DBMetadata *)metadata Sie erhalten alle Details der einzelnen Dateien. Durchsuchen Sie alle Dateien mit dem Dateinamen Ihres Interesses und erhalten Sie die Rev-Details mit file.rev und speichern Sie sie.

Wenn Sie die Datei ersetzen möchten, für parentrev Argument, geben die nsstring als das, was Sie mit file.rev gespeichert

1

Ein interessanter Weg ist

[[self restclient] loadrevisionsforfile:@"/test.pdf"] 

Dies vorausgesetzt, dass Sie Ihren Test kennen. pdf ist unter Stammverzeichnis

in den Delegaten

-(void) restclient:(DBRestClient *)client loadedRevisions:(NSArray *)revisions forfile:(NSString *)path 

Überarbeitungen Array enthält die Geschichte aller Revisionen test.pdf Datei, um die Array Zahl bedeutet die Anzahl der Male test.pdf anzeigt wurde aktualisiert

DBMetaData *y = [revisions objectatindex:0] 

bei Index 0, der letzte aktualisierte Test die Revisionsnummer ist. pdf.

Für die bestehende test.pdf aktualisieren, können y.rev in parentrev

+0

Was ist, wenn es 1000 Revisionen gibt? Dies scheint eine Verschwendung zu sein, aber wenn Sie mit einem Limit von 1 aufrufen, ist es möglicherweise schneller als alle Metadaten zu erhalten. –