awacke1 commited on
Commit
dbebd64
·
1 Parent(s): 8b66346

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +24 -15
app.py CHANGED
@@ -40,27 +40,36 @@ def display_cosmos_db_structure():
40
  else:
41
  st.markdown(item_desc)
42
 
43
-
44
  # Function to Add or Update an Item
45
  def add_or_update_item(database_name, container_name, item_id, item_data):
46
  container = cosmos_client.get_database_client(database_name).get_container_client(container_name)
47
- try:
48
- existing_item = container.read_item(item_id, partition_key=PartitionKey(item_id))
 
 
 
 
 
49
  existing_item.update(item_data)
50
- container.replace_item(item_id, existing_item)
51
- except CosmosResourceNotFoundError:
52
- container.create_item(item_data)
 
 
 
53
 
54
- # Function to Add or Update an Item
55
- def add_or_update_item(database_name, container_name, item_id, item_data):
 
 
 
56
  container = cosmos_client.get_database_client(database_name).get_container_client(container_name)
57
- try:
58
- existing_item = container.read_item(item_id, partition_key=PartitionKey(item_id))
59
- existing_item.update(item_data)
60
- container.replace_item(item_id, existing_item)
61
- except exceptions.CosmosResourceNotFoundError:
62
- container.create_item(item_data)
63
-
64
  # Button to Trigger Display of Cosmos DB Structure
65
  if st.button('Show Cosmos DB Structure'):
66
  display_cosmos_db_structure()
 
40
  else:
41
  st.markdown(item_desc)
42
 
 
43
  # Function to Add or Update an Item
44
  def add_or_update_item(database_name, container_name, item_id, item_data):
45
  container = cosmos_client.get_database_client(database_name).get_container_client(container_name)
46
+ query = "SELECT * FROM c WHERE c.id = @id"
47
+ parameters = [{"name": "@id", "value": item_id}]
48
+ items = list(container.query_items(query=query, parameters=parameters, enable_cross_partition_query=True))
49
+
50
+ if items:
51
+ # Item exists, update it
52
+ existing_item = items[0]
53
  existing_item.update(item_data)
54
+ container.replace_item(item=existing_item, body=existing_item)
55
+ st.write(f"Updated Item: {item_id}")
56
+ else:
57
+ # Item does not exist, create new
58
+ container.create_item(body=item_data)
59
+ st.write(f"Created New Item: {item_id}")
60
 
61
+ # Display item ID and image if available
62
+ display_item(database_name, container_name, item_id)
63
+
64
+ # Function to Display an Item
65
+ def display_item(database_name, container_name, item_id):
66
  container = cosmos_client.get_database_client(database_name).get_container_client(container_name)
67
+ item = container.read_item(item_id, partition_key=PartitionKey(item_id))
68
+ st.markdown(f"- **Item ID**: {item_id}")
69
+ if 'file_name' in item and item['file_name'].endswith('.png'):
70
+ st.image(item['file_name'], caption=f"Image: {item['file_name']}")
71
+
72
+
 
73
  # Button to Trigger Display of Cosmos DB Structure
74
  if st.button('Show Cosmos DB Structure'):
75
  display_cosmos_db_structure()