Ciao! Questa è principalmente una domanda per @angus, ma se qualcuno avesse qualche suggerimento, gli sarei molto grato!
Stavo lavorando a una variazione del @angus Topic Custom Field Plugin e l’avevo fatta funzionare come desiderato nella mia istanza di discourse ospitata localmente (versione 3.4.0.beta3-dev). Una volta installata sulla nostra istanza di discourse distribuita (anch’essa versione 3.4.0.beta3-dev), sta succedendo qualcosa di strano. Quando un utente scrive un nuovo post e inserisce un valore nel campo personalizzato, questo non viene salvato né visualizzato quando l’utente pubblica il post. MA se l’utente modifica il post e poi aggiunge il valore, questo viene salvato e visualizzato. Quindi questo mi porta a pensare che si interrompa da qualche parte nei connettori (presumibilmente il connettore del composer), ma non riesco a capire perché, dato che funziona perfettamente nella mia istanza locale. Ho delle espressioni regolari che filtrano gli input, forse questo potrebbe essere il colpevole? Qualsiasi suggerimento è molto apprezzato, Grazie!
È difficile eseguire il debug in astratto, quindi ti darò invece alcuni consigli. La chiave per trovare la risposta a qualsiasi problema di questo tipo è la concentrazione e il processo di eliminazione. Inizia cercando di capire perché riesci a riprodurre il problema in produzione ma non in sviluppo.
I plugin e i temi sono esattamente gli stessi in produzione e in sviluppo?
Stai usando lo stesso tipo di utente (amministratore, moderatore, ecc.)?
Stai eseguendo le azioni sullo stesso tipo di argomento?
Stai eseguendo le azioni alla stessa velocità?
Inizia facendo tutto il possibile per cercare di riprodurre il problema in sviluppo, se effettivamente c’è un problema. Concentrati su questo finché non ottieni risultati o non capisci perché è diverso in produzione.
Inoltre, parte del motivo per cui il plugin Topic Custom Fields non è destinato all’uso in produzione è che non ha test. So che non ti piacerà sentirlo, ma dovresti scrivere alcuni test di accettazione per il comportamento del composer. Questo ti darà una risposta definitiva sul fatto che funzioni o meno in scenari particolari.
Non sono sicuro se questo possa aiutare, ma sembra che il problema possa essere che il campo personalizzato non viene configurato correttamente durante la creazione di un post.
Assicurati di assegnare un valore predefinito al campo quando si apre il compositore.
Potresti anche provare a disabilitare temporaneamente il filtro regex per verificare se sta causando problemi di convalida. Infine, ricontrolla che il campo personalizzato sia effettivamente incluso nei dati inviati durante il salvataggio iniziale.