El plugin funciona en la instancia local, pero se rompe al desplegarlo

¡Hola! Esta es principalmente una pregunta para @angus, ¡pero si alguien tiene alguna sugerencia, estaría muy agradecido!

Había estado trabajando en una variación del Plugin de Campo Personalizado de Tema de @angus y lo tenía funcionando como deseaba en mi instancia de discourse alojada localmente (versión 3.4.0.beta3-dev). Una vez que lo instalé en nuestra instancia desplegada de discourse (también versión 3.4.0.beta3-dev), está sucediendo algo extraño. Cuando un usuario escribe una nueva publicación y pone una entrada en el campo personalizado, no la guarda ni la renderiza cuando el usuario realiza la publicación. PERO si el usuario edita la publicación y luego agrega la entrada, la guarda y la renderiza. Esto me indica que se rompe en algún lugar de los conectores (presumiblemente el conector del compositor), pero no puedo entender por qué, ya que funciona perfectamente en mi instancia local. Tengo algunas expresiones regulares que filtran las entradas, ¿tal vez este podría ser el culpable? ¡Cualquier sugerencia es muy apreciada, ¡Gracias!

1 me gusta

Es difícil depurar esto en abstracto, así que en su lugar te daré algunos consejos. La clave para encontrar la respuesta a cualquier problema como este es el enfoque y el proceso de eliminación. Comienza por averiguar por qué puedes reproducir el problema en producción pero no en desarrollo.

  1. ¿Son los plugins y los temas exactamente los mismos en producción y desarrollo?
  2. ¿Estás utilizando el mismo tipo de usuario (administrador, moderador, etc.)?
  3. ¿Estás realizando las acciones en el mismo tipo de tema?
  4. ¿Estás realizando las acciones a la misma velocidad?

Comienza haciendo todo lo que puedas para intentar reproducir el problema en desarrollo, si es que hay un problema. Concéntrate en eso hasta que obtengas resultados o averigües por qué es diferente en producción.

Además, parte de la razón por la que el plugin Topic Custom Fields no está diseñado para uso en producción es que no tiene ninguna prueba. Sé que no te gustará oír esto, pero deberías escribir algunas pruebas de aceptación para el comportamiento del compositor. Eso te dará una respuesta definitiva sobre si funciona en escenarios particulares o no.

1 me gusta

No estoy seguro de si esto ayudaría, pero parece que el problema podría ser que el campo personalizado no se está configurando correctamente al crear una publicación.

Asegúrate de asignar un valor predeterminado al campo cuando se abra el editor.

También podrías intentar deshabilitar tu filtro regex temporalmente para verificar si está causando algún problema de validación. Por último, vuelve a verificar que el campo personalizado se incluya realmente en los datos enviados durante el guardado inicial.

2 Me gusta