Initialisieren Sie das pydantische Literal aus einem Array von ZeichenfolgenPython

Python-Programme
Guest
 Initialisieren Sie das pydantische Literal aus einem Array von Zeichenfolgen

Post by Guest »

Ich möchte ein pydantisches Literal aus einem Array von Zeichenfolgen initialisieren

Code: Select all

from typing import Literal
from pydantic import BaseModel

CLASS_NAME_VALUES = ["primary", "secondary", "success", "danger", "warning", "info", "dark"]
ICON_NAME_VALUES = ["electricity.svg", "water.svg",
"internet.svg", "naturalGas.svg", "noCategory.svg"]

class CategoryRequest(BaseModel):
class_name: Literal[CLASS_NAME_VALUES]
icon_name: Literal[ICON_NAME_VALUES]

Aber ich erhalte die folgende Fehlermeldung

Code: Select all

  File "pydantic/main.py", line 252, in pydantic.main.ModelMetaclass.__new__
File "pydantic/fields.py", line 309, in pydantic.fields.ModelField.infer
File "pydantic/fields.py", line 271, in pydantic.fields.ModelField.__init__
File "pydantic/fields.py", line 351, in pydantic.fields.ModelField.prepare
File "pydantic/fields.py", line 529, in pydantic.fields.ModelField.populate_validators
File "pydantic/validators.py", line 566, in find_validators
File "pydantic/validators.py", line 410, in pydantic.validators.make_literal_validator
TypeError: unhashable type: 'list'
Irgendwelche Vorschläge?

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post