2016-04-11 9 views
0

Ich kann nicht bestimmen, wie benutzerdefinierte Eigenschaften hinzugefügt oder nach ihnen gesucht werden.Wie verwende ich die AppProperties mit dem Ruby API-Client

Alles, was ich versucht habe, gibt mir eine Error - #<Google::Apis::ClientError: invalid: Invalid query>, wenn ich versuche, nach ihnen zu suchen. Ich kann andere Abfragen erfolgreich abschließen, aber ich weiß nicht, ob der Client so eingerichtet ist, dass er mit appProperties (oder gar mit Eigenschaften) arbeitet.

Grundsätzlich brauche ich nur die richtige Syntax zum Suchen und Hinzufügen, da es nicht in der Dokumentation zu sein scheint.

Antwort

0

einen Verweis auf einen autorisierten DriveService Sie bereits Angenommen, können Sie basierend auf AppProperties mit einem q-Parameter (dokumentiert here), wie diese Suche:

file_list = drive.list_files(
    q: "appProperties has { key='my_app_key' and value='my_val' }", 
    fields: 'files(id, name, appProperties)', 
    spaces: 'drive') 

Wenn Sie den fields Parameter dann weglassen die Die Suche funktioniert weiterhin, aber die Eigenschaften selbst werden nicht zurückgegeben.

Aktualisieren appProperties ist definitiv geheimnisvoll und die Dokumentation ist undurchsichtig. Sie benötigen die ID der Datei und ein Dateiwertobjekt als Container für die zu aktualisierenden Attribute. Etwas wie dieses:

new_app_properties = { 'my_app_key' => 'my_val' } 
update_f = Google::Apis::DriveV3::File.new(app_properties: new_app_properties) 
drive.update_file(file_id, update_f)