Ho recentemente migrato un forum phpBB con circa 1400 utenti a Discourse. A parte una manciata di account, tutti i digest sembrano essere inviati a partire dalle 8:00. C’è un modo per assegnare agli utenti un orario casuale tra le 00:00 e le 23:00?
Penso che potresti modificare user_stats.digest_attempted_at per tutti i tuoi utenti con un valore casuale. Forse aggiungeresti 0-24 ore al loro attuale valore user_stats.digest_attempted_at.
Questo è quello che avevo immaginato che avrei dovuto fare. Tuttavia, sono abituato ad ambienti di server condivisi in cui c’è un server di database a cui posso connettermi da remoto. Sono molto bravo in SQL, ma non so come connettermi al database su una droplet di DigitalOcean. Qualsiasi suggerimento sarebbe molto apprezzato.
Grazie mille per i suggerimenti. Ho deciso che farlo da Rails comportava una curva di apprendimento troppo ripida, quindi ho capito come farlo tramite postgres. Ecco la mia soluzione:
./launcher enter app
su - postgres
psql discourse
UPDATE user_stats SET digest_attempted_at = digest_attempted_at - interval '1' DAY * random();
Penso che per questo sia abbastanza sicuro. Capisco l’approccio “vai con ciò che conosci”, ma Rails ti offre molte protezioni (assicurandosi che le cose vengano applicate e che le tabelle rimangano connesse e così via).