Comments (8)
Do you mean like a PATCH? I.e. a partial update on an existing record?
this_col.update(this_item, merge=True)
where this_col = collection
this_item = dict w/partial records to update.
On Fri, Nov 4, 2016 at 4:46 AM, Cemre Mengu [email protected]
wrote:
Is there anyway to do an upsert without using "AQL" ?
Something like collection.upsert(data)
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
#27, or mute the thread
https://github.com/notifications/unsubscribe-auth/AF_EDAMtRWgDG2FKdITURAhx2VFGWeuKks5q6vECgaJpZM4KpThj
.
Brian Russo / (808) 271 4166
from python-arango.
Not exactly @brianrusso
I mean an operation where it updates the record if exists or creates a new one otherwise
from python-arango.
Arango's REST API doesn't expose UPSERT; so you have to do it with AQL.
On Sat, Nov 5, 2016 at 4:14 PM, Cemre Mengu [email protected]
wrote:
Not exactly @brianrusso https://github.com/brianrusso
I mean an operation where it updates the record if exists or creates a new
one otherwise—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
#27 (comment),
or mute the thread
https://github.com/notifications/unsubscribe-auth/AF_EDMjg6kPJQZooCgwXhpMu6RIQD8PJks5q7OOcgaJpZM4KpThj
.
Brian Russo / (808) 271 4166
from python-arango.
Nice, thanks I ended up writing a wrapper function for it. All good.
from python-arango.
@cemremengu can you share ?
I tried
sys_db.aql.execute(
f"""
UPSERT {{_key: {str(PREFIX_CONVERTER[event_metadata[2]]) + str(json_payload["order_id"])} }}
INSERT {doc}
UPDATE {{ version: OLD.version + 1 }} IN events OPTIONS {{ exclusive: true }}
"""
)
without success.
from python-arango.
@Bennyelg sorry its been a long time, I dont use these techs currently :/
from python-arango.
@cemremengu thanks
from python-arango.
@joowani ,
As for as I know, arango provided upsert function, can you provide too in arango-python?
Using OLD and NEW in the same query
For UPDATE , REPLACE and UPSERT statements, both OLD and NEW can be used to return the previous revision of a document
together with the updated revision:
FOR u IN users
FILTER u.status == "not active"
UPDATE u WITH { status: "inactive" } IN users
RETURN { old: OLD, new: NEW }
from python-arango.
Related Issues (20)
- Documentation issue: ordered/geoJSON on collection.add_geo_index HOT 1
- Authenticate using User JWT-Token HOT 1
- Custom JSON serializer not being used for bulk operations HOT 3
- Edges not retrievable without committing transaction HOT 2
- python-arango is not working without pip-install installation HOT 3
- Content in API docs of branch `main` disappeared HOT 1
- merge functionality HOT 1
- Replacement for `pkg_resources` HOT 1
- Transactions Failing on Collection Deletion HOT 3
- Unable to disable request timeout HOT 2
- Requests with endpoint="/_api/simple/..." fail HOT 10
- API Specification Page is not rendering
- Collection.find does not work in 7.6.1 if filter attribute is set to none HOT 3
- Enum can't be serialized anymore after upgrade to 7.6.2 HOT 2
- bind_vars type hints are incomplete HOT 4
- broken build_filter_conditions for keys with spaces // backtick escaping missing? HOT 2
- Unix socket support HOT 5
- Make ArangoClient generic to support typing when a custom serialiser is used HOT 9
- feature request: Continue an existing transaction HOT 3
- `arango.exceptions.GraphTraverseError: [HTTP 404][ERR 404] unknown path '/_api/traversal'` when using `traverse` (arangodb 3.12) HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from python-arango.