[pyar] [Django] problema al modificar y agregar un campo fecha un Model

Fernando Riquelme fernandoriquelme55 en gmail.com
Dom Ago 28 12:34:16 ART 2016


El problema podría estar en el campo expire_date, de alguna de tus tablas
(creo que Main_catamaran puede tener ese campo)

2016-08-28 2:47 GMT-03:00 Ricardo Daniel Quiroga <l2radamanthys en gmail.com>:

> Hola
> actualmente estoy modificando un Modelo en django especificamente
>
> class Negocio(models.Model):
>     nombre = models.CharField(max_length=100)
>     telefono = models.CharField(max_length=20, blank=True, default='')
>     telefono_alt = models.CharField(max_length=20, blank=True, default='')
>     facebook = models.CharField(max_length=100, default='
> https://facebook.com')
>     email = models.CharField(max_length=100, blank=True, default='')
>     lat = models.FloatField(default=0.0)
>     lng = models.FloatField(default=0.0)
>     inproved = models.BooleanField(default=False)
>     vencimiento = models.DateField(auto_now=True)
>     active = models.BooleanField(default=True, editable=False)
>
> agregue el campo vencimiento
>      vencimiento = models.DateField(auto_now=True)
>
> pero cuando corro python manage.py migrate (despues de haber corrido
> makemigrations) me devuelve el siguiente error,
>
>
>
> (env3c) D:\Workspace\Python\SPOServer\SPOServer>python manage.py
> makemigrations
> Migrations for 'Main':
>   Main\migrations\0010_auto_20160828_0238.py:
>     - Alter field expire_date on catamaran
>
> (env3c) D:\Workspace\Python\SPOServer\SPOServer>python manage.py migrate
> Operations to perform:
>   Apply all migrations: Main, admin, auth, contenttypes, sessions
> Running migrations:
>   Rendering model states... DONE
>   Applying Main.0005_auto_20160828_0233...Traceback (most recent call
> last):
>   File "D:\Workspace\virtualenv\env3c\lib\site-packages\
> django\db\backends\utils
> .py", line 64, in execute
>     return self.cursor.execute(sql, params)
>   File "D:\Workspace\virtualenv\env3c\lib\site-packages\
> django\db\backends\sqlit
> e3\base.py", line 337, in execute
>     return Database.Cursor.execute(self, query, params)
> sqlite3.IntegrityError: NOT NULL constraint failed:
> Main_catamaran.expire_date
>
> The above exception was the direct cause of the following exception:
>
> Traceback (most recent call last):
>   File "manage.py", line 22, in <module>
>     execute_from_command_line(sys.argv)
>   File "D:\Workspace\virtualenv\env3c\lib\site-packages\
> django\core\management\_
> _init__.py", line 367, in execute_from_command_line
>     utility.execute()
>   File "D:\Workspace\virtualenv\env3c\lib\site-packages\
> django\core\management\_
> _init__.py", line 359, in execute
>     self.fetch_command(subcommand).run_from_argv(self.argv)
>   File "D:\Workspace\virtualenv\env3c\lib\site-packages\
> django\core\management\b
> ase.py", line 305, in run_from_argv
>     self.execute(*args, **cmd_options)
>   File "D:\Workspace\virtualenv\env3c\lib\site-packages\
> django\core\management\b
> ase.py", line 356, in execute
>     output = self.handle(*args, **options)
>   File "D:\Workspace\virtualenv\env3c\lib\site-packages\
> django\core\management\c
> ommands\migrate.py", line 202, in handle
>     targets, plan, fake=fake, fake_initial=fake_initial
>   File "D:\Workspace\virtualenv\env3c\lib\site-packages\
> django\db\migrations\exe
> cutor.py", line 97, in migrate
>     state = self._migrate_all_forwards(plan, full_plan, fake=fake,
> fake_initial=
> fake_initial)
>   File "D:\Workspace\virtualenv\env3c\lib\site-packages\
> django\db\migrations\exe
> cutor.py", line 132, in _migrate_all_forwards
>     state = self.apply_migration(state, migration, fake=fake,
> fake_initial=fake_
> initial)
>   File "D:\Workspace\virtualenv\env3c\lib\site-packages\
> django\db\migrations\exe
> cutor.py", line 237, in apply_migration
>     state = migration.apply(state, schema_editor)
>   File "D:\Workspace\virtualenv\env3c\lib\site-packages\
> django\db\migrations\mig
> ration.py", line 129, in apply
>     operation.database_forwards(self.app_label, schema_editor, old_state,
> projec
> t_state)
>   File "D:\Workspace\virtualenv\env3c\lib\site-packages\
> django\db\migrations\ope
> rations\fields.py", line 84, in database_forwards
>     field,
>   File "D:\Workspace\virtualenv\env3c\lib\site-packages\
> django\db\backends\sqlit
> e3\schema.py", line 231, in add_field
>     self._remake_table(model, create_fields=[field])
>   File "D:\Workspace\virtualenv\env3c\lib\site-packages\
> django\db\backends\sqlit
> e3\schema.py", line 199, in _remake_table
>     self.quote_name(model._meta.db_table),
>   File "D:\Workspace\virtualenv\env3c\lib\site-packages\
> django\db\backends\base\
> schema.py", line 112, in execute
>     cursor.execute(sql, params)
>   File "D:\Workspace\virtualenv\env3c\lib\site-packages\
> django\db\backends\utils
> .py", line 79, in execute
>     return super(CursorDebugWrapper, self).execute(sql, params)
>   File "D:\Workspace\virtualenv\env3c\lib\site-packages\
> django\db\backends\utils
> .py", line 64, in execute
>     return self.cursor.execute(sql, params)
>   File "D:\Workspace\virtualenv\env3c\lib\site-packages\django\db\utils.py",
> lin
> e 94, in __exit__
>     six.reraise(dj_exc_type, dj_exc_value, traceback)
>   File "D:\Workspace\virtualenv\env3c\lib\site-packages\django\utils\six.py",
> li
> ne 685, in reraise
>     raise value.with_traceback(tb)
>   File "D:\Workspace\virtualenv\env3c\lib\site-packages\
> django\db\backends\utils
> .py", line 64, in execute
>     return self.cursor.execute(sql, params)
>   File "D:\Workspace\virtualenv\env3c\lib\site-packages\
> django\db\backends\sqlit
> e3\base.py", line 337, in execute
>     return Database.Cursor.execute(self, query, params)
> django.db.utils.IntegrityError: NOT NULL constraint failed:
> Main_catamaran.expir
> e_date
>
> (env3c) D:\Workspace\Python\SPOServer\SPOServer>
>
> alguna manera de agregar esto por django o tendre que hacerlo a mano en
> SQLite
> Estoy usando Django 1.10 y Python 3.5.2 32bit sobre Windows por si sirve
> de algo
>
> gracias
>
>
>
> --
>
> Ricardo Daniel Quiroga
>
>
> _______________________________________________
> pyar mailing list pyar en python.org.ar
> http://listas.python.org.ar/listinfo/pyar
>
> PyAr - Python Argentina - Sitio web: http://www.python.org.ar/
>
> La lista de PyAr esta Hosteada en USLA - Usuarios de Software Libre de
> Argentina - http://www.usla.org.ar
>
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://listas.python.org.ar/pipermail/pyar/attachments/20160828/99f780b9/attachment.html>


Más información sobre la lista de distribución pyar