Method: Appwrite::Databases#update_datetime_attribute

Defined in:
lib/appwrite/services/databases.rb

#update_datetime_attribute(database_id:, collection_id:, key:, required:, default:, new_key: nil) ⇒ AttributeDatetime

Update a date time attribute. Changing the default value will not update already existing documents.

Parameters:

  • database_id (String)

    Database ID.

  • collection_id (String)

    Collection ID. You can create a new collection using the Database service [server integration](appwrite.io/docs/server/databases#databasesCreateCollection).

  • key (String)

    Attribute Key.

  • []

    required Is attribute required?

  • default (String)

    Default value for attribute when not provided. Cannot be set when attribute is required.

  • new_key (String) (defaults to: nil)

    New attribute key.

Returns:

  • (AttributeDatetime)


595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
# File 'lib/appwrite/services/databases.rb', line 595

def update_datetime_attribute(database_id:, collection_id:, key:, required:, default:, new_key: nil)
    api_path = '/databases/{databaseId}/collections/{collectionId}/attributes/datetime/{key}'
        .gsub('{databaseId}', database_id)
        .gsub('{collectionId}', collection_id)
        .gsub('{key}', key)

    if database_id.nil?
      raise Appwrite::Exception.new('Missing required parameter: "databaseId"')
    end

    if collection_id.nil?
      raise Appwrite::Exception.new('Missing required parameter: "collectionId"')
    end

    if key.nil?
      raise Appwrite::Exception.new('Missing required parameter: "key"')
    end

    if required.nil?
      raise Appwrite::Exception.new('Missing required parameter: "required"')
    end

    if default.nil?
      raise Appwrite::Exception.new('Missing required parameter: "default"')
    end

    api_params = {
        required: required,
        default: default,
        newKey: new_key,
    }
    
    api_headers = {
        "content-type": 'application/json',
    }

    @client.call(
        method: 'PATCH',
        path: api_path,
        headers: api_headers,
        params: api_params,
        response_type: Models::AttributeDatetime
    )
end