راکت
حل شده

مشکل با عدم migrate فیلد جدید در مدل جنگو

3 پاسخ

سلام وقت بخیر
من یک مشکلی در جنگو دارم
هر زمان که فیلد جدیدی به کلاس(جدول) مدل اضافه میکنم و ران سرور میکنم با خطای no such column: مواجه میشم
و اگر فیلد جدیدی که به کلاس مدلم اضافه کردم رو حذف کنم خطا هم از بین میره

علی رغم انجام migrate , makemigrations هم هیچ تغییری که منجر به مهاجرت اون فیلد جدید بشه دریافت نمیکنم

البته با حذف فایلهای داخل دایرکتوری migrations و فایل Db.sqlite3 مشکل حل میشه

سوالم این بود که راه اصولی حل این مشکل چی هست

ثبت پرسش جدید

پاسخ‌ها

3
علی صبایی
علی صبایی
@aiub.safi

تخصص: برنامه نویس جنگو

بهترین پاسخ

عملا دیتا بیس با مدل ها نمیتونست سینک کنه

محمد هانی فیض
محمد هانی فیض
@mhanyf

تخصص: django developer

سلام وقتتون بخیر
راه کار دیگری به غیر از پاک کردن فایل های migrations من تا به حال در جایی ندیدم به همین دلیل فکر می کنم راهکار مناسبی باشه.
اما کلا این ارور به دلیل این هست که احتمالا شما یکسری object با کلاس قبلی model ساختید و حالا یکی از اون فیلد هایی که object با ان ساخته شده را از فایل model حذف کردید به همین دلیل این ارور پیش می آید
پیشنهاد میکنم فایل model را به حالت اول برگردانید و تمام object هایی را که از روی ان ساختید پاک کنید سپس به فیلدی را که میخواهید پاک کنید.

علی صبایی
علی صبایی
@aiub.safi

تخصص: برنامه نویس جنگو

یک راه خوب استفاده از دستور که جوا ب داد
python manage.py makemigrations

python manage.py migrate --run-syncdb

شاید پاسخ شما همین‌جا باشد

برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام