Dosyada etiket alanı ayarlama

Bu sayfada, tek bir Google Drive dosyasında nasıl etiket Field ayarlanacağı açıklanmaktadır.

Dosya etiketi ayarlayarak bir dosyaya meta veri eklemek için files.modifyLabels yöntemini kullanın. İstek gövdesi, bir dosyadaki etiket grubunu değiştirmek için ModifyLabelsRequest öğesinin bir örneğini içerir. İstek, anatomik olarak uygulanan çeşitli değişiklikler içerebilir. Diğer bir deyişle, geçerli olmayan değişiklikler varsa güncellemenin tamamı başarısız olur ve (muhtemelen bağımlı olabilecek) değişikliklerin hiçbiri uygulanmaz.

ModifyLabelsRequest, bir dosyadaki etikette yapılan değişiklik olan LabelModification örneğini içerir. Ayrıca, bir etiketin alanında yapılan değişiklik olan FieldModification örneğini de içerebilir.

Başarılı olursa yanıt gövdesi, istek tarafından eklenen veya güncellenen etiketleri içerir. Bunlar, Label türündeki bir modifiedLabels nesnesi içinde bulunur.

Örnek

Aşağıdaki kod örneğinde, bir dosyada bu Field için değer ayarlamak üzere metin alanında fieldId özelliğinin nasıl kullanılacağı gösterilmektedir. Bir dosyada Field etiketi ilk kez ayarlandığında bu etiket dosyaya uygulanır. Daha sonra, tek bir alanın ayarını iptal edebilir veya etiketle ilişkili tüm alanları kaldırabilirsiniz. Daha fazla bilgi için Dosyadaki bir etiket alanının ayarını kaldırma ve Dosyadan etiket kaldırma başlıklı makaleleri inceleyin.

Java

LabelFieldModification fieldModification =
new LabelFieldModification().setFieldId("FIELD_ID").setSetTextValues(ImmutableList.of("VALUE"));

ModifyLabelsRequest modifyLabelsRequest =
  new ModifyLabelsRequest()
      .setLabelModifications(
          ImmutableList.of(
              new LabelModification()
                .setLabelId("LABEL_ID")
                .setFieldModifications(ImmutableList.of(fieldModification))));

ModifyLabelsResponse modifyLabelsResponse = driveService.files().modifyLabels("FILE_ID", modifyLabelsRequest).execute();

Python

field_modification = {'fieldId':'FIELD_ID','setTextValues':['VALUE']}
label_modification = {'labelId':'LABEL_ID', 'fieldModifications':[field_modification]}

modified_labels = drive_service.files().modifyLabels(fileId="FILE_ID", body = {'labelModifications' : [label_modification]}).execute();

Node.js

/**
* Set a label with a text field on a Drive file
* @return{obj} updated label data
**/
async function setLabelTextField() {
  // Get credentials and build service
  // TODO (developer) - Use appropriate auth mechanism for your app

  const {GoogleAuth} = require('google-auth-library');
  const {google} = require('googleapis');

  const auth = new GoogleAuth({scopes: 'https://www.googleapis.com/auth/drive'});
  const service = google.drive({version: 'v3', auth});
  const fieldModification = {
    'fieldId': 'FIELD_ID',
    'setTextValues': ['VALUE'],
  };
  const labelModification = {
    'labelId': 'LABEL_ID',
    'fieldModifications': [fieldModification],
  };
  const labelModificationRequest = {
    'labelModifications': [labelModification],
  };
  try {
    const updateResponse = await service.files.modifyLabels({
      fileId: 'FILE_ID',
      resource: labelModificationRequest,
    });
    return updateResponse;
  } catch (err) {
    // TODO (developer) - Handle error
    throw err;
  }
}

Aşağıdakini değiştirin:

  • FIELD_ID: Değiştirilecek alanın fieldId değeridir. fieldId öğesini bulmak için Google Drive Tagging API'yi kullanarak etiketi alın.
  • VALUE: Bu alan için yeni value.
  • LABEL_ID: Değiştirilecek etiketin labelId değeridir.
  • FILE_ID: Etiketlerin değiştirildiği dosyanın fileId öğesi.

Notlar

  • Alanı olmayan bir etiket ayarlamak için fieldModifications bulunmayan labelModifications kodunu uygulayın.
  • Seçim alanı seçenekleri için değer belirlemek üzere Drive Etiketler API'de etiket şemasını getirerek alabileceğiniz değerin Choice kimliğini kullanın.
  • Yalnızca değer listelerini destekleyen bir Field, birden çok değere sahip olabilir. Aksi takdirde 400: Bad Request hata yanıtı alırsınız.
  • Seçilen Field için uygun değer türünü (ör. tam sayı, metin, kullanıcı) ayarlayın. Aksi takdirde 400: Bad Request hata yanıtı alırsınız. Alan veri türünü Drive Tagging API'yi kullanarak öğrenebilirsiniz.