From 09e5e4c62e61e60431d1a1a48e08b259c7f2017f Mon Sep 17 00:00:00 2001 From: Roberto Rosario Date: Sat, 18 Oct 2014 00:58:37 -0400 Subject: [PATCH] Use auto_now_add for the lock_manager app --- docs/releases/1.1.rst | 1 + .../lock_manager/migrations/0001_initial.py | 36 +++++++++++++++++++ ..._auto__chg_field_lock_creation_datetime.py | 30 ++++++++++++++++ .../apps/lock_manager/migrations/__init__.py | 0 mayan/apps/lock_manager/models.py | 4 +-- 5 files changed, 68 insertions(+), 3 deletions(-) create mode 100644 mayan/apps/lock_manager/migrations/0001_initial.py create mode 100644 mayan/apps/lock_manager/migrations/0002_auto__chg_field_lock_creation_datetime.py create mode 100644 mayan/apps/lock_manager/migrations/__init__.py diff --git a/docs/releases/1.1.rst b/docs/releases/1.1.rst index df2967c172..a1791b7c6a 100644 --- a/docs/releases/1.1.rst +++ b/docs/releases/1.1.rst @@ -59,6 +59,7 @@ Next upgrade/add the new requirements:: Migrate existing database schema with:: $ mayan-edms.py migrate dynamic_search 0001 --fake + $ mayan-edms.py migrate lock_manager 0001 --fake $ mayan-edms.py migrate tags 0001 --fake $ mayan-edms.py migrate diff --git a/mayan/apps/lock_manager/migrations/0001_initial.py b/mayan/apps/lock_manager/migrations/0001_initial.py new file mode 100644 index 0000000000..087b90d702 --- /dev/null +++ b/mayan/apps/lock_manager/migrations/0001_initial.py @@ -0,0 +1,36 @@ +# -*- coding: utf-8 -*- +from south.utils import datetime_utils as datetime +from south.db import db +from south.v2 import SchemaMigration +from django.db import models + + +class Migration(SchemaMigration): + + def forwards(self, orm): + # Adding model 'Lock' + db.create_table(u'lock_manager_lock', ( + (u'id', self.gf('django.db.models.fields.AutoField')(primary_key=True)), + ('creation_datetime', self.gf('django.db.models.fields.DateTimeField')()), + ('timeout', self.gf('django.db.models.fields.IntegerField')(default=30)), + ('name', self.gf('django.db.models.fields.CharField')(unique=True, max_length=48)), + )) + db.send_create_signal(u'lock_manager', ['Lock']) + + + def backwards(self, orm): + # Deleting model 'Lock' + db.delete_table(u'lock_manager_lock') + + + models = { + u'lock_manager.lock': { + 'Meta': {'object_name': 'Lock'}, + 'creation_datetime': ('django.db.models.fields.DateTimeField', [], {}), + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), + 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '48'}), + 'timeout': ('django.db.models.fields.IntegerField', [], {'default': '30'}) + } + } + + complete_apps = ['lock_manager'] \ No newline at end of file diff --git a/mayan/apps/lock_manager/migrations/0002_auto__chg_field_lock_creation_datetime.py b/mayan/apps/lock_manager/migrations/0002_auto__chg_field_lock_creation_datetime.py new file mode 100644 index 0000000000..809f43d358 --- /dev/null +++ b/mayan/apps/lock_manager/migrations/0002_auto__chg_field_lock_creation_datetime.py @@ -0,0 +1,30 @@ +# -*- coding: utf-8 -*- +from south.utils import datetime_utils as datetime +from south.db import db +from south.v2 import SchemaMigration +from django.db import models + + +class Migration(SchemaMigration): + + def forwards(self, orm): + + # Changing field 'Lock.creation_datetime' + db.alter_column(u'lock_manager_lock', 'creation_datetime', self.gf('django.db.models.fields.DateTimeField')(auto_now_add=True)) + + def backwards(self, orm): + + # Changing field 'Lock.creation_datetime' + db.alter_column(u'lock_manager_lock', 'creation_datetime', self.gf('django.db.models.fields.DateTimeField')()) + + models = { + u'lock_manager.lock': { + 'Meta': {'object_name': 'Lock'}, + 'creation_datetime': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'blank': 'True'}), + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), + 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '48'}), + 'timeout': ('django.db.models.fields.IntegerField', [], {'default': '30'}) + } + } + + complete_apps = ['lock_manager'] \ No newline at end of file diff --git a/mayan/apps/lock_manager/migrations/__init__.py b/mayan/apps/lock_manager/migrations/__init__.py new file mode 100644 index 0000000000..e69de29bb2 diff --git a/mayan/apps/lock_manager/models.py b/mayan/apps/lock_manager/models.py index 93bfc704a9..07fcf70ec6 100644 --- a/mayan/apps/lock_manager/models.py +++ b/mayan/apps/lock_manager/models.py @@ -2,14 +2,13 @@ from __future__ import absolute_import from django.db import models from django.utils.translation import ugettext_lazy as _ -from django.utils.timezone import now from .managers import LockManager from .settings import DEFAULT_LOCK_TIMEOUT class Lock(models.Model): - creation_datetime = models.DateTimeField(verbose_name=_(u'Creation datetime')) + creation_datetime = models.DateTimeField(verbose_name=_(u'Creation datetime'), auto_now_add=True) timeout = models.IntegerField(default=DEFAULT_LOCK_TIMEOUT, verbose_name=_(u'Timeout')) name = models.CharField(max_length=48, verbose_name=_(u'Name'), unique=True) @@ -19,7 +18,6 @@ class Lock(models.Model): return self.name def save(self, *args, **kwargs): - self.creation_datetime = now() if not self.timeout and not kwargs.get('timeout'): self.timeout = DEFAULT_LOCK_TIMEOUT