私は、人々がサインアップできるこれらの「イベント」を投稿する WIX Web サイトに取り組んでいます。イベントが終了したときに、これらのイベントがフロントエンドから隠されるようにしています。show 値が true かどうかをリピーターがチェックする「show」ブール値を作成しました。私がやろうとしているのは、イベントが終了した場合に "show" 値を false にすることです。
誰かがページにアクセスするたびにメソッドを呼び出して、今日の日付よりも古いアイテムをデータベースに照会し、それらのアイテムの「表示」値を false に設定することで、これを機能させました。問題は、ページの読み込みに時間がかかることです。私がやりたいのは、cron サービスを使用して 1 日に数回メソッドを呼び出すことです。これを行う唯一の方法は、wix-http 関数を使用してメソッドを呼び出すことです。これまでの私のコードは次のとおりです。
import wixData from 'wix-data';
import {ok} from 'wix-http-functions';
export function use_eventExpire() {
var today = new Date(); //Gets todays date
return wixData.query("Events") //Begins Query of "Events" Database
.le("endTime", today) //Looks for items that are older than
//today's date
.eq("show", true) //Looks for items that have the "show"
//value as true
.find() //Ends query
.then((results) => { //Gets Results
let numberOfItems = results.length; //Gets Number
//of Items from Query
var i = 0; //Declares iterator
for (; i < numberOfItems; i++) { //Loops through all items
let items = results.items[i]; //Loops through all items
items.show = false; //Sets items "show" value to false
wixData.update("Events", items) //Updates Database
.then((results) => { //If successful
console.log("Successfull: " + results); //Logs Results
}).catch((err) => { //If unsuccessful
console.log("There was an Error: " + err);
//Logs Error
});
}
});
}
リンクに移動すると、OK が返されますが、何も呼び出されず、データベースが更新されません。何を変更する必要がありますか?