Gem de API de Discourse: ¿cómo crear un tema con etiquetas?

Esto no funciona…

client.create_topic(
  title: "Mi título",
  category: "13",
  raw: "Mi publicación",
  tags: "etiqueta_prueba"
)

Dado que requerimos al menos una etiqueta, obtengo:

DiscourseApi::UnprocessableEntity ({"action"=>"create_post", "errors"=>["Debes seleccionar al menos 1 etiqueta."]}):

¿Alguna idea sobre cómo crear temas con etiquetas mediante la gem de Discourse?

2 Me gusta

Tal vez convenga usar tags:["testtag"]

2 Me gusta

Eso tampoco funciona, Faizaan (el mismo mensaje de que se requiere una etiqueta).

No estoy seguro si esto está desactualizado, pero parece que las etiquetas son diferentes a las demás, ya que son de algún tipo de array. Sin embargo, ¿cómo las usamos a través del gem?

Si observas la pestaña de red mientras realizas una solicitud exitosa, puedes traducirlo a cómo hacerlo con el gem.

1 me gusta

Necesita este formato:

Pero, ¿cómo se hace eso con la gem?

Esto es lo que ilustré en mi publicación anterior.

…pero no funciona:

DiscourseApi::UnprocessableEntity ({“action”=>“create_post”, “errors”=>[“Debes seleccionar al menos 1 etiqueta.”]}):

:confused:

1 me gusta

¿Puedes probar otras etiquetas?

1 me gusta

Jaja, eso es exactamente lo que yo también pensaba, así que simplemente lo hice. Los últimos que probé definitivamente existen (pero aún así no funcionan).

1 me gusta

¿Puedes desactivar las etiquetas obligatorias en una categoría para ver si realmente funciona?

¿Te refieres al gem? Funciona, ya que lo uso para crear publicaciones en temas existentes (de hecho, desde el mismo script), enviar mensajes privados, etc. Esta es la primera vez que intento agregar etiquetas.

1 me gusta

Ok, veo. Estoy seguro de que lo estás haciendo, pero solo para confirmar

client.create_topic(
  title: "Mi título",
  category: "13",
  raw: "Mi publicación",
  tags: ["testtag", "testtag2"]
)
1 me gusta

Al revisar el código fuente del gem discourse_api, parece que aún no admite la creación de temas con etiquetas. Lo agregaré a mi lista.

5 Me gusta

Gracias, Blake :slightly_smiling_face:

1 me gusta

¡Bien, ahora puedes crear Temas con etiquetas usando la última versión (0.42.0) del gem discourse_api.

Solo necesitas pasar las etiquetas en un array así:

4 Me gusta

¡Vaya, eso fue rápido, Blake!

No esperaba una actualización tan pronto y logré encontrar una solución alternativa usando el método POST y pasando todo como parámetros. Sin embargo, hacerlo con create_topic es definitivamente mejor. ¡Gracias!

3 Me gusta

Este tema se cerró automáticamente después de 29 horas. Ya no se permiten nuevas respuestas.