Okay, je pense que je m’en rapproche \u003cdel\u003eplus près\u003c/del\u003e \u003cins\u003etrès près maintenant\u003c/ins\u003e.
\u003cdel\u003eJ’ai essayé this.post.save() et cela semble fonctionner - la requête PUT semble passer (utilisant ajax en arrière-plan), mais j’ai rencontré une erreur avec peu ou pas d’informations. Mais c’était avant ça…\u003c/del\u003e
\u003cins\u003eLe this.post.save() fonctionne. Le seul problème est celui listé ci-dessous :\u003c/ins\u003e
Ma fonction ressemble maintenant à ceci :
@action
async addCodeFences() {
let selectedText = this.selectedText;
let newText = "```" + "\n" + selectedText + "\n" + "```";
let post = this.post;
console.log(this.post.cooked); // Fonctionne
let rawPost = post.raw; // N'existe pas !!
console.log(rawPost); // undefined !
rawPost.replace(selectedText, "\n" + newText + "\n"); // Erreur, car rawPost est undefined !
await this.post.save({
raw: rawPost,
edit_reason: I18n.t(themePrefix("add_code_fence_edit_reason"))
});
}
Pour une raison quelconque, je ne peux pas obtenir le contenu brut du post, seulement le contenu cuit. En dehors de faire une requête ajax, y a-t-il un moyen de le faire ? Je ne semble pas trouver raw parmi les attributs du post… y a-t-il une raison pour qu’il ne soit pas inclus ?
P.S. J’essaie de ne pas me tourner vers Ask Discourse. J’apprécierais vraiment toute aide !
\u003chr\u003e
EDIT : Je pense que chaque post est basé sur cette requête API ? Et la réponse ne semble pas avoir raw comme l’une des clés JSON
.