わかりました、だいぶ近づいてきたと思います。
this.post.save()を試したところ、それは「機能する」ようでした。PUTリクエストは(内部でajaxを使用している)通過しているようですが、ほとんど情報のないエラーに遭遇しました。しかし、それはこれより前のことでした。
このthis.post.save()は機能します。唯一の問題は、以下にリストされているものです。
私の関数は現在このようになっています。
@action
async addCodeFences() {
let selectedText = this.selectedText;
let newText = "```" + "\n" + selectedText + "\n" + "```";
let post = this.post;
console.log(this.post.cooked); // 機能する
let rawPost = post.raw; // 存在しない!!
console.log(rawPost); // undefined!
rawPost.replace(selectedText, "\n" + newText + "\n"); // rawPostが未定義のためエラー!
await this.post.save({
raw: rawPost,
edit_reason: I18n.t(themePrefix("add_code_fence_edit_reason"))
});
}
なぜか、調理済みのものしか取得できず、投稿の生のコンテンツを取得できません。ajaxリクエストを行う以外に、方法はありますか?投稿の属性としてrawが見つかりません…含まれていない理由がありますか?
追伸:Discourseの質問に頼りたくありません。どんな助けでも本当に感謝します!
編集:各投稿はこのAPIリクエストに基づいていると思いますか?そして、応答にはrawがJSONキーの1つとして含まれていないようです:face_exhaling:。