해결됨: %22DO_NOTHING%22는 django로 정의되지 않았습니다.

기여.인증

Django에는 %22DO_NOTHING%22 필터에 대해 정의된 동작이 없습니다. 템플릿이나 보기에서 사용하면 예기치 않은 결과가 발생할 수 있습니다.

.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

오류는 DO_NOTHING 옵션이 정의되지 않았습니다. 사용 중인 Django 버전에서 지원되지 않기 때문일 수 있습니다. 이 문제를 해결하려면 Django를 최신 버전으로 업데이트하거나 on_delete 지원되는 다른 항목에 대한 옵션입니다.

Solve Django 'Handler'가 정의되지 않았습니다.

이 오류는 Django 프로젝트에 import 문이 없기 때문에 발생합니다. 프로젝트의 가져오기 섹션에 다음 줄을 추가하여 이 문제를 해결할 수 있습니다.

from django.contrib.auth.models 가져오기 사용자

타사 인증 라이브러리를 사용하는 경우 가져오기도 추가해야 할 수 있습니다.

관련 게시물:

코멘트 남김