رفع خطای AttributeError type object User has no attribute REQUIRED_FIELDS جنگو
اگر در حال کار با فریمورک جنگو در پایتون هستید و با خطای AttributeError: type object ‘User’ has no attribute ‘REQUIRED_FIELDS’ روبرو شدهاید در این نوشته به روش حل آن میپردازیم.
رفع خطای AttributeError type object User has no attribute REQUIRED_FIELDS جنگو
برای رفع این مشکل در جنگو کافیست مقدار دهی به متغیر AUTH_USER_MODEL را در فایل settings.py حذف کنید.
البته روش بالا در صورتی مناسب است که نخواهید از یکی از مدلهای خود در جنگو به عنوان Custom User Model استفاده کنید اگر این کار را میخواهید بکنید کافیست در مدلی که قصد دارید برای Custom User Model خود استفاده کنید کافیست به مدل خود متغیر REQUIRED_FIELDS را اضافه کنید:
class User(AbstractUser):
REQUIRED_FIELDS = []
اگر روش حل دیگری برای این مشکل دارید در بخش نظرات همین نوشته برای ما بنویسید.



















تشکر بابت کدی که قرار دادین
موفق باشین
این خطا تو چه نسخهای از جنگو بیشتر رخ میده؟
این خطا در نسخههای مختلف جنگو ممکن است رخ دهد، اما معمولاً در هنگام استفاده از Custom User Model یا تغییرات در تنظیمات AUTH_USER_MODEL مشاهده میشود.
استفاده از AbstractUser بهتره یا AbstractBaseUser؟
سلام، هر دو کلاس AbstractUser و AbstractBaseUser برای ساخت مدل کاربری سفارشی در جنگو مناسب هستند، اما AbstractUser شامل فیلدهای پیشفرض کاربر مانند نام کاربری، ایمیل و رمز عبور است که کار را راحتتر میکند.
بعد از اضافه کردن این لیست لازمه مایگریشن جدید بسازیم یا نیازی نیست؟
بله، بعد از اضافه کردن. REQUIRED_FIELDS لازم است که مایگریشن جدید بسازید و آن را اعمال کنید.
اگه بخوایم یه سری فیلد مثل ایمیل یا شماره موبایل رو اجباری کنیم، باید تو همین لیست بذاریم؟
بله، اگر میخواهید فیلدهایی مانند ایمیل یا شماره موبایل اجباری شوند، باید آنها را در لیست REQUIRED_FIELDS مدل کاربری خود قرار دهید.