Autocompletado para un campo de usuario en el registro

¡Hola a todos!

Llevo unas semanas jugando y ajustando el foro. ¡La documentación sobre temas y componentes ha sido de gran ayuda!

Últimamente he añadido campos personalizados de usuario en el registro que se pueden editar después de la inscripción.
Mi desafío actual es implementar la autocompletación para uno de estos campos de entrada de usuario y conectarlo con una API.

Por ahora, estoy pidiendo al usuario que escriba el texto y lo guardo como un valor, pero no me satisface del todo.
Además, tengo una API que devuelve un JSON al hacer POST con la búsqueda.
El objetivo es buscar el valor de entrada a través de la API y autocompletar las opciones para el usuario.

No he encontrado una manera de crear un nuevo tipo de campo personalizado de usuario y convertirlo en un campo de autocompletado.
También me he perdido intentando crear un widget o componente, añadirlo al formulario de registro y guardar su valor en la base de datos.

Si tienes alguna idea sobre un enfoque mejor, ¡apreciaría mucho tu ayuda en esto! :slight_smile:

Necesitarías un plugin para hacer eso. Y podrías revisar otro código que implemente la autocompletación por categoría como ejemplo de cómo funciona. Aún soy malo en eso y creo que me tomaría de 3 a 10 horas. Creo que alguien que ya lo haya hecho podría hacerlo en 1 o 2.

¡Hola Jay! Efectivamente, eso es lo que estoy haciendo: escribiendo un plugin.

Sí, tengo un tema/componente que extiende Discourse y he estado utilizando extensivamente la documentación para crear temas, componentes y plugins.

Sin embargo, ese caso específico de personalizar un campo de usuario sigue siendo un misterio en esta etapa.

Cualquier ayuda será muy apreciada.

El lugar para comenzar es la Guía para principiantes sobre la creación de complementos de Discourse, parte 1: Crear un complemento básico. Creo que necesitarás avanzar bastante más para tener una pregunta lo suficientemente pequeña como para que alguien pueda ofrecerte muchos consejos.

Pero tal vez, si obtienes los datos de la búsqueda desde una fuente externa, podrías hacerlo todo en un componente de tema. De nuevo, mi mejor consejo es que examines partes del núcleo de Discourse que realizan el tipo de búsqueda de la que hablas, como los elementos de categorías y etiquetas.