আমার কাছে পাইথন Enum
ক্লাসটি রয়েছে:
from enum import Enum
class Seniority(Enum):
Intern = "Intern"
Junior_Engineer = "Junior Engineer"
Medior_Engineer = "Medior Engineer"
Senior_Engineer = "Senior Engineer"
এমওয়াইএসকিউএল ডাটাবেসে সিনিয়রটি এনইউএম কলামের মান "ইন্টার্ন", "জুনিয়র ইঞ্জিনিয়ার", "মধ্যম ইঞ্জিনিয়ার", "সিনিয়র ইঞ্জিনিয়ার" রয়েছে।
সমস্যাটি হ'ল আমি একটি ত্রুটি পেয়েছি:
LookupError: "Junior Engineer" is not among the defined enum values
এই ত্রুটিটি ঘটেছে যখন আমি কোয়েরিকে যেমন কল করি:
UserProperty.query.filter_by(full_name='John Doe').first()
seniority
UserProperty
মডেল এনাম সম্পত্তি হয় ।
class UserProperty(db.Model):
...
seniority = db.Column(db.Enum(Seniority), nullable=True)
...
এই শ্রেণীর জন্য আমি প্যাকেজটি ব্যবহার করে marshmallow
Schema
এবং EnumField
থেকে স্কিমা ক্লাসটি সংজ্ঞায়িত করেছি marshmallow_enum
:
class UserPropertySchema(Schema):
...
seniority = EnumField(Seniority, by_value=True)
...
এই পরিস্থিতিতে কী করবেন, কারণ আমি স্থান সহ অজগর শ্রেণীর সম্পত্তির নামটি সংজ্ঞায়িত করতে পারি না। কীভাবে পাইথনকে সম্পত্তির নামের পরিবর্তে সংজ্ঞায়িত বৈশিষ্ট্যের মান ব্যবহার করতে বাধ্য করা যায়?