Sincronizar associação de grupo com lista externa de endereços de e-mail

Se você não tiver esses usuários gerenciados em algum aplicativo externo, pode fazer algo assim:

  def load_csv(path)
    CSV.parse(File.read(path), headers: true)
  end

  def update_group
   g=Group.find(43) # qualquer ID de grupo que você deseje
   GroupUser.where(group_id: g.id).destroy_all
   user_emails=load_csv('/caminho/para/o/arquivo')
    user_emails.each do |u|
      user = User.find_by_email(u['Email'])
      next unless user
      puts "usuário encontrado #{uid}"
      GroupUser.find_or_create_by(group_id: g.id, user_id: user.id)
    end
  end

Apenas como fazer isso é uma questão completamente diferente. Talvez um plugin.

Talvez um plugin que adicione automaticamente um usuário ao grupo se ele postar na categoria?