Example datastore list tasks

Example datastore list tasks

Explore further

For detailed documentation that includes this code sample, see the following:

Code sample

C#

To learn how to install and use the client library for Datastore mode, see Datastore mode client libraries . For more information, see the Datastore mode C# API reference documentation .

To authenticate to Datastore mode, set up Application Default Credentials. For more information, see Set up authentication for a local development environment .

  /// <summary> 
 /// Returns a list of all task entities in ascending order of creation time. 
 /// </summary> 
 IEnumerable<Entity> 
  
 ListTasks 
 () 
 { 
  
 Query 
  
 query 
  
 = 
  
 new 
  
 Query 
 ( 
 "Task" 
 ) 
  
 { 
  
 Order 
  
 = 
  
 { 
  
 { 
  
 "created" 
 , 
  
 PropertyOrder 
 . 
 Types 
 . 
 Direction 
 . 
 Descending 
  
 } 
  
 } 
  
 }; 
  
 return 
  
 _db 
 . 
 RunQuery 
 ( 
 query 
 ). 
 Entities 
 ; 
 } 
 

Go

To learn how to install and use the client library for Datastore mode, see Datastore mode client libraries . For more information, see the Datastore mode Go API reference documentation .

To authenticate to Datastore mode, set up Application Default Credentials. For more information, see Set up authentication for a local development environment .

  import 
  
 ( 
  
 "context" 
  
 "log" 
  
 "cloud.google.com/go/datastore" 
 ) 
 // ListTasks returns all the tasks in ascending order of creation time. 
 func 
  
 ListTasks 
 ( 
 projectID 
  
 string 
 ) 
  
 ([] 
 * 
 Task 
 , 
  
 error 
 ) 
  
 { 
  
 ctx 
  
 := 
  
 context 
 . 
 Background 
 () 
  
 client 
 , 
  
 err 
  
 := 
  
 datastore 
 . 
  NewClient 
 
 ( 
 ctx 
 , 
  
 projectID 
 ) 
  
 if 
  
 err 
  
 != 
  
 nil 
  
 { 
  
 log 
 . 
 Fatalf 
 ( 
 "Could not create datastore client: %v" 
 , 
  
 err 
 ) 
  
 } 
  
 var 
  
 tasks 
  
 [] 
 * 
 Task 
  
 // Create a query to fetch all Task entities, ordered by "created". 
  
 query 
  
 := 
  
 datastore 
 . 
  NewQuery 
 
 ( 
 "Task" 
 ). 
  Order 
 
 ( 
 "created" 
 ) 
  
 keys 
 , 
  
 err 
  
 := 
  
 client 
 . 
  GetAll 
 
 ( 
 ctx 
 , 
  
 query 
 , 
  
& tasks 
 ) 
  
 if 
  
 err 
  
 != 
  
 nil 
  
 { 
  
 return 
  
 nil 
 , 
  
 err 
  
 } 
  
 // Set the id field on each Task from the corresponding key. 
  
 for 
  
 i 
 , 
  
 key 
  
 := 
  
 range 
  
 keys 
  
 { 
  
 tasks 
 [ 
 i 
 ]. 
 id 
  
 = 
  
 key 
 . 
 ID 
  
 } 
  
 return 
  
 tasks 
 , 
  
 nil 
 } 
 

Java

To learn how to install and use the client library for Datastore mode, see Datastore mode client libraries . For more information, see the Datastore mode Java API reference documentation .

To authenticate to Datastore mode, set up Application Default Credentials. For more information, see Set up authentication for a local development environment .

  /** 
 * Returns a list of all task entities in ascending order of creation time. 
 * 
 * @throws DatastoreException if the query fails 
 */ 
 Iterator<Entity> 
  
 listTasks 
 () 
  
 { 
  
 Query<Entity> 
  
 query 
  
 = 
  
 Query 
 . 
 newEntityQueryBuilder 
 (). 
 setKind 
 ( 
 "Task" 
 ). 
 setOrderBy 
 ( 
 OrderBy 
 . 
 asc 
 ( 
 "created" 
 )). 
 build 
 (); 
  
 return 
  
 datastore 
 . 
 run 
 ( 
 query 
 ); 
 } 
 

Node.js

To learn how to install and use the client library for Datastore mode, see Datastore mode client libraries . For more information, see the Datastore mode Node.js API reference documentation .

To authenticate to Datastore mode, set up Application Default Credentials. For more information, see Set up authentication for a local development environment .

  async 
  
 function 
  
 listTasks 
 () 
  
 { 
  
 const 
  
 query 
  
 = 
  
 datastore 
 . 
 createQuery 
 ( 
 'Task' 
 ). 
 order 
 ( 
 'created' 
 ); 
  
 const 
  
 [ 
 tasks 
 ] 
  
 = 
  
 await 
  
 datastore 
 . 
 runQuery 
 ( 
 query 
 ); 
  
 console 
 . 
 log 
 ( 
 'Tasks:' 
 ); 
  
 tasks 
 . 
 forEach 
 ( 
 task 
  
 = 
>  
 { 
  
 const 
  
 taskKey 
  
 = 
  
 task 
 [ 
 datastore 
 . 
 KEY 
 ]; 
  
 console 
 . 
 log 
 ( 
 taskKey 
 . 
 id 
 , 
  
 task 
 ); 
  
 }); 
 } 
 

PHP

To learn how to install and use the client library for Datastore mode, see Datastore mode client libraries . For more information, see the Datastore mode PHP API reference documentation .

To authenticate to Datastore mode, set up Application Default Credentials. For more information, see Set up authentication for a local development environment .

  use Google\Cloud\Datastore\DatastoreClient; 
 /** 
 * Return an iterator for all the tasks in ascending order of creation time. 
 * 
 * @param string $projectId The Google Cloud project ID. 
 */ 
 function list_tasks(string $projectId) 
 { 
 $datastore = new DatastoreClient(['projectId' => $projectId]); 
 $query = $datastore->query() 
 ->kind('Task') 
 ->order('created'); 
 $result = $datastore->runQuery($query); 
 /* @var Entity $task */ 
 foreach ($result as $index => $task) { 
 printf('ID: %s' . PHP_EOL, $task->key()->pathEnd()['id']); 
 printf('  Description: %s' . PHP_EOL, $task['description']); 
 printf('  Status: %s' . PHP_EOL, $task['done'] ? 'done' : 'created'); 
 printf('  Created: %s' . PHP_EOL, $task['created']->format('Y-m-d H:i:s e')); 
 print(PHP_EOL); 
 } 
 } 
 

Python

To learn how to install and use the client library for Datastore mode, see Datastore mode client libraries . For more information, see the Datastore mode Python API reference documentation .

To authenticate to Datastore mode, set up Application Default Credentials. For more information, see Set up authentication for a local development environment .

  from 
  
 google.cloud 
  
 import 
  datastore 
 
 def 
  
 list_tasks 
 ( 
 client 
 : 
  datastore 
 
 . 
  Client 
 
 ): 
 # Create a query against all of your objects of kind "Task" 
 query 
 = 
 client 
 . 
  query 
 
 ( 
 kind 
 = 
 "Task" 
 ) 
 query 
 . 
  order 
 
 = 
 [ 
 "created" 
 ] 
 return 
 list 
 ( 
 query 
 . 
 fetch 
 ()) 
 

Ruby

To learn how to install and use the client library for Datastore mode, see Datastore mode client libraries . For more information, see the Datastore mode Ruby API reference documentation .

To authenticate to Datastore mode, set up Application Default Credentials. For more information, see Set up authentication for a local development environment .

  def 
  
 list_tasks 
  
 require 
  
 "google/cloud/datastore" 
  
 datastore 
  
 = 
  
 Google 
 :: 
 Cloud 
 :: 
  Datastore 
 
 . 
  new 
 
  
 query 
  
 = 
  
 datastore 
 . 
 query 
 ( 
 "Task" 
 ) 
 . 
 order 
 ( 
 "created" 
 ) 
  
 tasks 
  
 = 
  
 datastore 
 . 
 run 
  
 query 
  
 tasks 
 . 
  each 
 
  
 do 
  
 | 
 t 
 | 
  
 puts 
  
 t 
 [ 
 "description" 
 ] 
  
 puts 
  
 t 
 [ 
 "done" 
 ] 
  
 ? 
  
 "  Done" 
  
 : 
  
 "  Not Done" 
  
 puts 
  
 "  ID: 
 #{ 
 t 
 . 
 key 
 . 
 id 
 } 
 " 
  
 end 
 end 
 

What's next

To search and filter code samples for other Google Cloud products, see the Google Cloud sample browser .

Create a Mobile Website
View Site in Mobile | Classic
Share by: