تم الحل:٪ 22DO_NOTHING٪ 22 لم يتم تعريفه django

المساهمة

لا يوجد سلوك محدد لعامل التصفية٪ 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 خيار لشيء آخر مدعوم.

لم يتم تعريف "معالج" Django

هذا الخطأ ناتج عن بيان استيراد مفقود في مشروع Django الخاص بك. يمكنك إصلاح ذلك عن طريق إضافة السطر التالي إلى قسم واردات مشروعك:

من django.contrib.auth.models استيراد المستخدم

إذا كنت تستخدم مكتبة مصادقة تابعة لجهة خارجية ، فقد تحتاج إلى إضافة استيرادها أيضًا.

الوظائف ذات الصلة:

اترك تعليق