hosna
(hosna)
3 Luglio 2020, 5:17am
1
Ho notato che molti dei miei utenti inattivi non sono ancora stati eliminati. Quindi ho controllato quegli utenti e il codice.
Quelli non hanno alcun valore per last_seen_at. Quindi penso che, nella riga seguente:
class CleanUpInactiveUsers < ::Jobs::Scheduled
every 1.day
def execute(args)
return if SiteSetting.clean_up_inactive_users_after_days <= 0
User
.where(
last_posted_at: nil,
trust_level: TrustLevel.levels[:newuser],
admin: false,
moderator: false,
)
.where("users.created_at < ?", SiteSetting.clean_up_inactive_users_after_days.days.ago)
.where(
"users.last_seen_at < ? OR users.last_seen_at IS NULL",
SiteSetting.clean_up_inactive_users_after_days.days.ago,
)
.where
.missing(:posts, :topics)
.limit(1000)
non vengano rilevati e eliminati. Ho ragione? E cosa posso fare?
Come sono stati creati quegli utenti?
hosna
(hosna)
3 Luglio 2020, 2:36pm
3
Credo che vengano creati tramite API e non vedano mai davvero il forum.
sam
(Sam Saffron)
6 Luglio 2020, 8:09am
4
Sì, questo lavoro sicuramente non toccherà questi record anomali; immagino che li aggiorneremo per includere last_seen_at.
hosna
(hosna)
7 Luglio 2020, 11:39am
5
C’è un comando della console per aggiungere un valore predefinito per last_seen_at?