hosna
(hosna)
Julho 3, 2020, 5:17am
1
Percebi que muitos dos meus usuários inativos ainda não foram removidos. Então, verifiquei esses usuários e o código.
Esses usuários não têm nenhum valor para last_seen_at. Então, acho que na seguinte linha:
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)
eles não são detectados e removidos. Estou certo? E o que posso fazer?
Como esses usuários foram criados?
hosna
(hosna)
Julho 3, 2020, 2:36pm
3
Acho que eles são criados via API e nunca realmente veem o fórum.
sam
(Sam Saffron)
Julho 6, 2020, 8:09am
4
Sim, essa tarefa certamente não vai afetar esses registros fora do padrão. Acho que talvez seja melhor atualizá-los com o campo last_seen_at.
hosna
(hosna)
Julho 7, 2020, 11:39am
5
Existe um comando de console para adicionar um valor padrão para last_seen_at?