-
Notifications
You must be signed in to change notification settings - Fork 1.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
item.update(item_properties={"typeKeywords': "values"}) fills in default values #1855
Comments
@FeralCatColonist |
@FeralCatColonist We will look into an enhancement in the python code but since typeKeywords are added within the item_properties dictionary we cannot simply add an append or anything. For now the workaround, albeit circular, is the best way to manage this occurrence. We will amp up our documentation around this as well. |
Describe the bug
When providing an update to the
typeKeywords
key, if appropriate values are not provided, then a series of default values are inserted into the item'stypeKeywords
. These may be substantially different from the default values assigned during the item's creation. This can provide a number of unintended consequences, most notably with the Site Application item type where the lack of ahubsubdomain|some-site
keyword effectively removes access to the site.To Reproduce
Steps to reproduce the behavior:
error:
Expected behavior
The current documentation is lackluster for those unfamiliar with using the ArcGIS REST API, when utilizing
update
my expectation is that it appends a singular value, and wholesale replacement of the values would require a comma separated list. This erroneous thought process was compounded by the fact that items continued to operate, returned a number oftypeKeywords
including the singular value that was provided. As stated above, this behavior was not fully understood until the Site Application became inoperative.A few thoughts,
-- developers.arcgis.com/python/api-reference/arcgis.gis.toc.html#arcgis.gis.Item.update
-- a discussion on how
update
will remove all current parameters for a given key-value pair-- notes on default parameters being created (to try and prevent an item from becoming inoperative)
-- example usage for the ingestion of list-based values
append
/remove
parameters could be added to the update function to allow more fine-grained control on the simple addition/removal of values.-- This would be a quality of life improvement to allow more pythonic operation instead of full replacement for what could be a single item addition/removal
-- The current methodology for adding a value is a bit circuitous:
typeKeywords
generated at item creationPlatform (please complete the following information):
2.3.0.2
]The text was updated successfully, but these errors were encountered: