Search Engine Serilizer Pydantic
Este módulo es un módulo técnico que define una nueva clase abstracta llamada PydandicModelSerializer que hereda de odoo.addons.connector_search_engine.tools.serializer.ModelSerializer
Esta nueva clase define un nuevo método abstracto get_model_class. Este método es utilizado por el índice para obtener la clase de modelo Pydantic que se usará para generar el esquema json.
En el formulario del índice, si el serializador es un PydanticModelSerializer, se muestra un campo para mostrar el esquema json relacionado y, por lo tanto, proporcionar documentación sobre los campos exportados y sus características.
Traducción automática al español (DeepSeek) de la descripción original de OCA, que está en inglés.
auto_awesome Qué hace este módulo
Generado por IA a partir del código · Odoo 18.0Añade una sección de Pydantic al formulario del índice del motor de búsqueda que muestra el esquema JSON de los registros almacenados en el índice cuando el índice utiliza un serializador basado en Pydantic.
Este es un módulo técnico que amplía la pantalla de configuración del índice del motor de búsqueda (se.index). No añade menús nuevos; añade un grupo "Pydantic" dentro del formulario de índice existente, justo después del grupo de configuración.
- Cuando el serializador seleccionado en el índice está basado en un modelo Pydantic, el formulario muestra un editor de código de solo lectura que muestra el esquema JSON de un registro almacenado en ese índice. Esto ayuda a los desarrolladores e integradores a ver qué campos se exportan y cuáles son sus características.
- Cuando el serializador no está basado en Pydantic, el grupo Pydantic se oculta y los campos del esquema están vacíos.
- Dos campos calculados admiten esto: uno booleano que indica si el serializador es un serializador Pydantic, y un campo de texto que contiene el esquema JSON. Ambos se calculan a partir del tipo de serializador del índice y no se almacenan en la base de datos.
- El módulo también define una clase base abstracta de serializador con un método que devuelve la clase de modelo Pydantic utilizada para generar el esquema. Los serializadores concretos deben implementarlo.
Toca el modelo se.index y depende del conector del motor de búsqueda y de la librería pydantic de Python.
Depende de
Lo necesitan otros módulos
Modelos y campos (1)
- se.index · amplía un modelo existenterecord_json_schema (JSON Schema of a record stored in this index (as dict)), is_pydantic_serializer (Is a Serializer based on Pydantic Model?), record_json_schema_str (JSON Schema of a record stored in this index)
Texto generado por IA (DeepSeek) al leer el código de la versión 18.0 en GitHub; puede contener errores, así que verifícalo en el código antes de decidir. Ver el código en GitHub
Disponibilidad por versión
Revisado: 2026-11-03Estado de confirmación: 2 confirmadas, 7 sin información de 9 versiones.
Fuentes · Odoo 18.0
Confirmado el 2026-11-03 en la rama 18.0 de OCA/search-engine.
terminal Instalación y uso
Documentación de OCA · Odoo 18.0Cuando defines un serializador basado en un modelo Pydantic, tu clase de serializador debe heredar de PydanticModelSerializer e implementar el método get_model_class para aprovechar la funcionalidad que proporciona este módulo.
Ejemplo:
from typing import Type
from pydantic import BaseModel
from odoo.addons.search_engine_serialize_pydantic.tools.serializer import (
PydanticModelSerializer,
)
class MyModel(BaseModel):
name: str
description: str
def record_to_model(self, record: Model) -> dict:
return cls(
name=record.name,
description=record.description,
)
class MyModelSerializer(PydanticModelSerializer):
def get_model_class(self) -> Type[MyModel]:
return MyModel
def serialize(self, record: Model) -> dict:
model: MyModel = self.get_model_class().record_to_model(record)
return model.model_dump()Traducción automática al español (DeepSeek) de la documentación original de OCA; los comandos y el código no se traducen. Sin información verificada en OCA: Instalación, Configuración.
Las instrucciones de instalación, el paquete de distribución, las dependencias y los pasos de configuración no se muestran porque todavía no se han verificado en la documentación del módulo para ninguna versión.
Datos importados de GitHub: esta ficha refleja la última revisión del catálogo, no una consulta en directo. Verifica siempre en la documentación del módulo y en staging antes de instalar en producción.