Selesai: %22DO_NOTHING%22 tidak ditakrifkan django

sumbangan.auth

Tiada gelagat yang ditentukan untuk penapis %22DO_NOTHING%22 dalam Django. Ini boleh membawa kepada hasil yang tidak dijangka jika digunakan dalam templat atau paparan.

.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

Kesilapan mengatakan bahawa DO_NOTHING pilihan tidak ditentukan – ini berkemungkinan kerana ia tidak disokong dalam versi Django yang anda gunakan. Untuk membetulkannya, anda boleh sama ada mengemas kini Django kepada versi yang lebih baharu, atau menukar on_delete pilihan kepada sesuatu yang lain yang disokong.

Selesaikan Django 'Pengendali' tidak ditakrifkan

Ralat ini disebabkan oleh kenyataan import yang hilang dalam projek Django anda. Anda boleh membetulkannya dengan menambahkan baris berikut pada bahagian import projek anda:

dari django.contrib.auth.models import Pengguna

Jika anda menggunakan pustaka pengesahan pihak ketiga, anda mungkin perlu menambah importnya juga.

Related posts:

Tinggalkan komen