Resuelto: %22DO_NOTHING%22 no está definido django

contribución.auth

No hay un comportamiento definido para el filtro %22DO_NOTHING%22 en Django. Esto podría generar resultados inesperados si se usa en una plantilla o vista.

.db.utils.ProgrammingError: %22DO_NOTHING%22 is not defined

I'm trying to run a migration in Django, but I get the following error:
<code>django.db.utils.ProgrammingError: %22DO_NOTHING%22 is not defined</code>
The migration file looks like this:
<code># -*- coding: utf-8 -*-
# Generated by Django 1.11 on 2017-08-18 13:16
from __future__ import unicode_literals

    from django.db import migrations, models

    class Migration(migrations.Migration):

        dependencies = [("myapp", "0004_auto_20170818_1255")]

        operations = [migrations.AlterField(model_name="mymodel", name="field1", field=models.ForeignKey(null=True, on_delete=models.DO_NOTHING, related_name="+", to="myapp"))]  # noqa</code>
The model it's referring to looks like this (the field in question is <code>field1</code>) : 
<code>class MyModel(models.Model):

    field1 = models.... # other fields here</code>  # noqa

El error es decir que el DO_NOTHING La opción no está definida; esto es probable porque no es compatible con la versión de Django que está utilizando. Para solucionar esto, puede actualizar Django a una versión más nueva o cambiar el on_delete opción a otra cosa que sea compatible.

Resolver Django 'Handler' no está definido

Este error es causado por una declaración de importación faltante en su proyecto Django. Puede solucionar esto agregando la siguiente línea a la sección de importaciones de su proyecto:

desde django.contrib.auth.models import User

Si está utilizando una biblioteca de autenticación de terceros, es posible que también deba agregar su importación.

Artículos Relacionados:

Deja un comentario