נפתרה: %22DO_NOTHING%22 אינו מוגדר ג'נגו

contrib.auth

אין התנהגות מוגדרת עבור המסנן %22DO_NOTHING%22 ב-Django. זה עלול להוביל לתוצאות בלתי צפויות אם משתמשים בתבנית או בתצוגה.

.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 שלך. אתה יכול לתקן זאת על ידי הוספת השורה הבאה למקטע הייבוא ​​של הפרויקט שלך:

מ- django.contrib.auth.models יבוא משתמש

אם אתה משתמש בספריית אימות של צד שלישי, ייתכן שתצטרך להוסיף גם את הייבוא ​​שלה.

הודעות קשורות:

השאירו תגובה