Comments (18)
So is this supported now? In which version? Thanks!
from mongoengine.
Just to clarify, auto_now
and auto_now_add
don't exist in mongoengine
from mongoengine.
@hygull In which version, does it work? I am using 0.13.0
and It's not working in my case.
from mongoengine.
Well I'd suggest using signals, but it all depends on how you update your documents. Doing a save
in pymongo will overwrite a document and isn't atomic. We do some handling of that, to make it atomic but there is a big cost in performance involved.
You can set a default which covers auto_now_add
but auto_now
is tricker to implement as it may be a mass update and arguably should be left to the application developer to implement.
from mongoengine.
Well, I've just noticed once more callable defaults and see default=lambda: datetime.utcnow()
variant. But may be it will be useful to have this out of the box.
And yes, I understand that implementing auto_now
is a kind of scary task:)
Also, I think that documenting design principles for auto_now
and auto_now_add
and the reasons why there shouldn't be auto_now
out of the box will be very useful.
from mongoengine.
I dont think its a scary task - should be relatively trivial, its just we'd have to hook into every save (easy) and inject into every update call - maybe unexpected for the user.
I'll schedule for post 0.7 - but it might make 0.7
from mongoengine.
Thank you very much!
Now I may try to contribute some code on this task. Not promising that I will though.
from mongoengine.
Having to bump to 0.8 as PY3 support came early!
from mongoengine.
damn... how do I deactivate this :))
from mongoengine.
Look at the following code snippet, it will clarify.
class Post(models.Model):
title = models.CharField(max_length=50, blank=False)
description = models.TextField()
pic = models.URLField(max_length=1000) #default max_length is 200
created = models.DateTimeField(auto_now_add=True, auto_now=False)
updated = models.DateTimeField(auto_now_add=False, auto_now=True)
posted_by = models.ForeignKey(User, on_delete=models.CASCADE) # "User" => won't work
def __unicode__(self):
return self.title
from mongoengine.
@hygull it's seem like that model by django,is really supported in mongo too?
from mongoengine.
@lvtuben Yes it supports. We can check this at Using MongoDB as your primary Django database.
from mongoengine.
Why unsure of this feature if it is already implemented?
And why is this issue still open?
from mongoengine.
Can you please check https://staltz.com/djangoconfi-mongoengine/#/9
from mongoengine.
@hygull In which version, does it work? I am using
0.13.0
and It's not working in my case.
Can you please check https://staltz.com/djangoconfi-mongoengine/#/9
from mongoengine.
This is really very useful!
from mongoengine.
This is very useful. I wonder why wouldn't it be part of the package... I am forced to overload the save() function for every model class to add it.
from mongoengine.
This is probably not going to be added since passed 11 years already.
from mongoengine.
Related Issues (20)
- InvalidDocument when using EmbeddedDocument primary key and ReferenceField
- The method document.save() will unseted fields that equal default
- Getting the following error , ValidationError(message, errors=errors) mongoengine.errors.ValidationError: ValidationError (User:656126eff188fc38533e1a9f) (You can only reference documents once they have been saved to the database: ['partners']) HOT 2
- Sorting on nested field that contains `__` in its name. HOT 1
- Validation doesn't work on embedded documents with inheritance HOT 1
- using vector search with mongoengine HOT 2
- missing link in documentation
- Document not working well with Fastapi & Pydantic
- Updating an inner dict within a `DictField` of a `DynamicDocument` raise an `AttributeError`
- Request the next release of 0.27.0 HOT 2
- “AttributeError: ‘_thread._local’ object has no attribute ‘no_dereferencing_class’ in Multithreaded Environment” HOT 11
- Exception raised: 2 or more items returned, instead of 1 HOT 3
- ImportError: cannot import name '_CaseInsensitiveDictionary' from 'pymongo.common' HOT 3
- `choices` not validated after update
- Support PEP484
- Changes from clear() on ListField are not saved
- visualization tools for the models
- `Queryset.modify` not support kwarg `array_filters` HOT 1
- Error on filtering on list of floats with empty list HOT 1
- Mongoengine Compatibility on Django 5.0.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 mongoengine.