Wie benutzt man die benutzerdefinierte Rake-Aufgabe 'undo change timestamp'?

Wie kann ich das im Detail ausführen? Ich bin mit Rake-Tasks nicht vertraut.

Ich bin auf dieses Problem gestoßen:

-bash: cd: /var/www/discourse: No such file or directory

Sie müssen es innerhalb des Containers tun.

cd /var/discourse
./launcher enter app

Wenn Sie es stattdessen über die Benutzeroberfläche tun können, wie in einem der obigen Beiträge vorgeschlagen, würde ich das empfehlen.

Sie müssen auch eine Datei mit diesem Code darin erstellen, vielleicht mit nano.

1 „Gefällt mir“

Vielen Dank, ich werde es später versuchen.

Ich habe gerade den API-Weg ausprobiert.

Aber ich erhalte einen 400-Fehler mit der Meldung:

{ errors: [ 'param is missing or the value is empty: timestamp' ] }

Hier ist mein Code:

changeTimestamp(935, 1694291380);

async function changeTimestamp(topicId, timestamp) {
  const endpoint = `/t/${topicId}/change-timestamp`;
  const payload = {
    timestamp: timestamp,
  };
  put(endpoint, payload);
}

async function put(endpoint, payload) {
  const response = await fetch(DISCOURSE_ADDRESS + endpoint, {
    method: "PUT",
    headers: {
      "Content-Type": "application/json",
      "Api-Key": DISCOURSE_API_KEY,
      "Api-Username": API_USERNAME,
      body: JSON.stringify(payload),
    },
  });
  const result = await response.json();
  if (!response.ok) {
    console.log("put failed");
    console.log(result);
  } else {
    console.log("put success");
  }
}

Du hast body in headers eingefügt. Es ist kein Header, sondern eine Option. Siehe die Dokumentation unten:

2 „Gefällt mir“