16
16
import datetime
17
17
from pprint import pprint
18
18
19
- from google .cloud import datastore
20
19
import google .cloud .exceptions
20
+ from google .cloud import datastore # noqa: I100
21
+
22
+
23
+ def _preamble ():
24
+ # [START datastore_incomplete_key]
25
+ # [START datastore_named_key]
26
+ # [START datastore_key_with_parent]
27
+ # [START datastore_key_with_multilevel_parent]
28
+ # [START datastore_basic_entity]
29
+ # [START datastore_entity_with_parent]
30
+ # [START datastore_properties]
31
+ # [START datastore_array_value]
32
+ # [START datastore_upsert]
33
+ # [START datastore_insert]
34
+ # [START datastore_update]
35
+ # [START datastore_lookup]
36
+ # [START datastore_delete]
37
+ # [START datastore_batch_upsert]
38
+ # [START datastore_batch_lookup]
39
+ # [START datastore_batch_delete]
40
+ # [START datastore_unindexed_property_query]
41
+ # [START datastore_basic_query]
42
+ # [START datastore_projection_query]
43
+ # [START datastore_ancestor_query]
44
+ # [START datastore_run_query]
45
+ # [START datastore_limit]
46
+ # [START datastore_cursor_paging]
47
+ # [START datastore_property_filter]
48
+ # [START datastore_composite_filter]
49
+ # [START datastore_key_filter]
50
+ # [START datastore_ascending_sort]
51
+ # [START datastore_descending_sort]
52
+ # [START datastore_multi_sort]
53
+ # [START datastore_keys_only_query]
54
+ # [START datastore_distinct_on_query]
55
+ # [START datastore_kindless_query]
56
+ # [START datastore_inequality_range]
57
+ # [START datastore_inequality_invalid]
58
+ # [START datastore_equal_and_inequality_range]
59
+ # [START datastore_inequality_sort]
60
+ # [START datastore_inequality_sort_invalid_not_same]
61
+ # [START datastore_inequality_sort_invalid_not_first]
62
+ # [START datastore_array_value_inequality_range]
63
+ # [START datastore_array_value_equality]
64
+ # [START datastore_exploding_properties]
65
+ # [START datastore_transactional_update]
66
+ # [START datastore_transactional_retry]
67
+ # [START datastore_transactional_get_or_create]
68
+ # [START datastore_transactional_single_entity_group_read_only]
69
+ # [START datastore_namespace_run_query]
70
+ # [START datastore_kind_run_query]
71
+ # [START datastore_property_run_query]
72
+ # [START datastore_property_by_kind_run_query]
73
+ # [START datastore_eventual_consistent_query]
74
+ # [START datastore_built_in_index_queries]
75
+ # [START datastore_merged_index_query]
76
+ # [START datastore_merged_index_tag_queries]
77
+ # [START datastore_owner_size_tag_query]
78
+ # [START datastore_size_coloration_query]
79
+ from google .cloud import datastore
80
+
81
+ # For help authenticating your client, visit
82
+ # https://cloud.google.com/docs/authentication/getting-started
83
+ client = datastore .Client ()
84
+
85
+ # [END datastore_incomplete_key]
86
+ # [END datastore_named_key]
87
+ # [END datastore_key_with_parent]
88
+ # [END datastore_key_with_multilevel_parent]
89
+ # [END datastore_basic_entity]
90
+ # [END datastore_entity_with_parent]
91
+ # [END datastore_properties]
92
+ # [END datastore_array_value]
93
+ # [END datastore_upsert]
94
+ # [END datastore_insert]
95
+ # [END datastore_update]
96
+ # [END datastore_lookup]
97
+ # [END datastore_delete]
98
+ # [END datastore_batch_upsert]
99
+ # [END datastore_batch_lookup]
100
+ # [END datastore_batch_delete]
101
+ # [END datastore_unindexed_property_query]
102
+ # [END datastore_basic_query]
103
+ # [END datastore_projection_query]
104
+ # [END datastore_ancestor_query]
105
+ # [END datastore_run_query]
106
+ # [END datastore_limit]
107
+ # [END datastore_cursor_paging]
108
+ # [END datastore_property_filter]
109
+ # [END datastore_composite_filter]
110
+ # [END datastore_key_filter]
111
+ # [END datastore_ascending_sort]
112
+ # [END datastore_descending_sort]
113
+ # [END datastore_multi_sort]
114
+ # [END datastore_keys_only_query]
115
+ # [END datastore_distinct_on_query]
116
+ # [END datastore_kindless_query]
117
+ # [END datastore_inequality_range]
118
+ # [END datastore_inequality_invalid]
119
+ # [END datastore_equal_and_inequality_range]
120
+ # [END datastore_inequality_sort]
121
+ # [END datastore_inequality_sort_invalid_not_same]
122
+ # [END datastore_inequality_sort_invalid_not_first]
123
+ # [END datastore_array_value_inequality_range]
124
+ # [END datastore_array_value_equality]
125
+ # [END datastore_exploding_properties]
126
+ # [END datastore_transactional_update]
127
+ # [END datastore_transactional_retry]
128
+ # [END datastore_transactional_get_or_create]
129
+ # [END datastore_transactional_single_entity_group_read_only]
130
+ # [END datastore_namespace_run_query]
131
+ # [END datastore_kind_run_query]
132
+ # [END datastore_property_run_query]
133
+ # [END datastore_property_by_kind_run_query]
134
+ # [END datastore_eventual_consistent_query]
135
+ # [END datastore_built_in_index_queries]
136
+ # [END datastore_merged_index_query]
137
+ # [END datastore_merged_index_tag_queries]
138
+ # [END datastore_owner_size_tag_query]
139
+ # [END datastore_size_coloration_query]
140
+ assert client is not None
21
141
22
142
23
143
def incomplete_key (client ):
@@ -91,8 +211,8 @@ def entity_with_parent(client):
91
211
92
212
93
213
def properties (client ):
94
- key = client .key ("Task" )
95
214
# [START datastore_properties]
215
+ key = client .key ("Task" )
96
216
task = datastore .Entity (key , exclude_from_indexes = ["description" ])
97
217
task .update (
98
218
{
@@ -110,8 +230,8 @@ def properties(client):
110
230
111
231
112
232
def array_value (client ):
113
- key = client .key ("Task" )
114
233
# [START datastore_array_value]
234
+ key = client .key ("Task" )
115
235
task = datastore .Entity (key )
116
236
task .update ({"tags" : ["fun" , "programming" ], "collaborators" : ["alice" , "bob" ]})
117
237
# [END datastore_array_value]
@@ -237,9 +357,8 @@ def batch_lookup(client):
237
357
# Create the entities we will lookup.
238
358
batch_upsert (client )
239
359
240
- keys = [client .key ("Task" , 1 ), client .key ("Task" , 2 )]
241
-
242
360
# [START datastore_batch_lookup]
361
+ keys = [client .key ("Task" , 1 ), client .key ("Task" , 2 )]
243
362
tasks = client .get_multi (keys )
244
363
# [END datastore_batch_lookup]
245
364
@@ -250,9 +369,8 @@ def batch_delete(client):
250
369
# Create the entities we will delete.
251
370
batch_upsert (client )
252
371
253
- keys = [client .key ("Task" , 1 ), client .key ("Task" , 2 )]
254
-
255
372
# [START datastore_batch_delete]
373
+ keys = [client .key ("Task" , 1 ), client .key ("Task" , 2 )]
256
374
client .delete_multi (keys )
257
375
# [END datastore_batch_delete]
258
376
@@ -304,6 +422,8 @@ def projection_query(client):
304
422
query .projection = ["priority" , "percent_complete" ]
305
423
# [END datastore_projection_query]
306
424
425
+ # This block intentionally doesn't include the top level import because
426
+ # it doesn't use a `datastore.Client` instance
307
427
# [START datastore_run_query_projection]
308
428
priorities = []
309
429
percent_completes = []
@@ -486,9 +606,8 @@ def kindless_query(client):
486
606
# Create the entity that we're going to query.
487
607
upsert (client )
488
608
489
- last_seen_key = client .key ("Task" , "a" )
490
-
491
609
# [START datastore_kindless_query]
610
+ last_seen_key = client .key ("Task" , "a" )
492
611
query = client .query ()
493
612
query .key_filter (last_seen_key , ">" )
494
613
# [END datastore_kindless_query]
0 commit comments