Attribuer aux utilisateurs une heure de résumé aléatoire ?

J’ai récemment migré un forum phpBB avec environ 1400 utilisateurs vers Discourse. À l’exception d’une poignée de comptes, tous les résumés semblent être envoyés à partir de 8h. Y a-t-il un moyen d’attribuer aux utilisateurs une heure aléatoire entre 00h00 et 23h00 ?

– Geoff

Je ne sais pas, mais on m’a dit (par l’IA) :

https://ask.discourse.com/discourse-ai/ai-bot/shared-ai-conversations/wisnZ2lMtzSY1ji_QM8BiA

Click saver : non, si l’IA savait et ne hallucinait pas.

Je pense que vous pourriez modifier user_stats.digest_attempted_at pour tous vos utilisateurs avec une valeur aléatoire. Peut-être ajouteriez-vous 0 à 24 heures à la valeur actuelle de user_stats.digest_attempted_at.

C’est un peu ce que je pensais devoir faire. Cependant, j’ai l’habitude des environnements mutualisés où il y a un serveur de base de données auquel je peux me connecter à distance. Je suis très bon en SQL, mais je ne sais pas comment me connecter à la base de données sur une gouttelette DigitalOcean. Tous les conseils seraient grandement appréciés.

Vous voulez le faire depuis Rails plutôt que de modifier la base de données directement.

Mais vous pourriez

./launcher enter app
su - postgres
psql discourse

et vous y mettre.

Vous pouvez consulter les Opérations en masse administratives et, je pense, trouver des exemples qui ressemblent à

users=User.where(something)
users.each do |user|
   user.update(field: value)
end

Merci beaucoup pour vos conseils. J’ai décidé que le faire depuis Rails représentait une courbe d’apprentissage trop importante, j’ai donc trouvé comment le faire via postgres. Voici ma solution :

./launcher enter app
su - postgres 
psql discourse
UPDATE user_stats SET digest_attempted_at = digest_attempted_at - interval '1' DAY * random();

Ça me semble correct.

Je pense que pour cela, c’est suffisamment sûr. Je comprends l’approche “fais ce que tu connais”, mais Rails vous offre de nombreuses protections (en s’assurant que les choses sont appliquées et que les tables restent connectées, etc.).

Content que vous ayez résolu le problème !

En vérifiant les journaux d’e-mails, tout est maintenant réparti uniformément. Merci pour votre aide !

1 « J'aime »

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.