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

Ricardo Daniel Quiroga l2radamanthys en gmail.com
Dom Ago 28 02:47:29 ART 2016


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
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://listas.python.org.ar/pipermail/pyar/attachments/20160828/48063a1d/attachment-0001.html>


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