Python'um var Enum
sınıfı :
from enum import Enum
class Seniority(Enum):
Intern = "Intern"
Junior_Engineer = "Junior Engineer"
Medior_Engineer = "Medior Engineer"
Senior_Engineer = "Senior Engineer"
MYSQL veritabanında kıdem ENUM sütununda "Intern", "Junior Engineer", "Medior Engineer", "Senior Engineer" değerleri bulunur.
Sorun şu ki bir hata alıyorum:
LookupError: "Junior Engineer" is not among the defined enum values
Bu hata, aşağıdaki gibi sorgu çağırdığımda oluştu:
UserProperty.query.filter_by(full_name='John Doe').first()
seniority
UserProperty
modelin enum özelliğidir .
class UserProperty(db.Model):
...
seniority = db.Column(db.Enum(Seniority), nullable=True)
...
Bu sınıf için kullanıyorum Şema sınıfı tanımladığınız marshmallow
Schema
ve EnumField
gelen marshmallow_enum
paketin:
class UserPropertySchema(Schema):
...
seniority = EnumField(Seniority, by_value=True)
...
Bu durumda ne yapmalı, çünkü boşlukla python sınıfı özellik adını tanımlayamıyorum. Python'u özellik adları yerine tanımlı özelliklerin değerlerini kullanmaya zorlamak nasıl?