Olá,
Existe a coluna (Dias Visitados) que vemos no link:
https://LINK/admin/users/2/USERNAME
Seria ótimo se pudéssemos incluir essa coluna no arquivo CSV da lista de usuários gerado a partir de:
Painel Administrativo => Aba Usuários => Botão “Exportar”
3 curtidas
Não é exatamente o que você esperava ouvir, mas…
O arquivo de exportação de usuários contém campos da tabela User.
O campo days_visited vem da tabela User_Stats.
Seria uma “antinormalização” ter os mesmos dados idênticos mais de uma vez (por exemplo, se o campo estivesse em ambas as tabelas). Se não me engano, o que você vê são os resultados de uma consulta JOIN que utiliza a tabela User, mas também outras tabelas relacionadas ao usuário.
Dito isso, com o plugin Data Explorer, você não terá problemas para executar uma consulta JOIN desse tipo que gere um arquivo de exportação com esse campo incluído.
3 curtidas
Não é bem preciso: o arquivo CSV inclui as colunas likes_given e likes_received, que também estão na mesma tabela user_stats:
--
-- Name: user_stats; Type: TABLE; Schema: public; Owner: discourse
--
CREATE TABLE public.user_stats (
user_id integer NOT NULL,
topics_entered integer DEFAULT 0 NOT NULL,
time_read integer DEFAULT 0 NOT NULL,
days_visited integer DEFAULT 0 NOT NULL,
posts_read_count integer DEFAULT 0 NOT NULL,
likes_given integer DEFAULT 0 NOT NULL,
likes_received integer DEFAULT 0 NOT NULL,
topic_reply_count integer DEFAULT 0 NOT NULL,
new_since timestamp without time zone NOT NULL,
read_faq timestamp without time zone,
first_post_created_at timestamp without time zone,
post_count integer DEFAULT 0 NOT NULL,
topic_count integer DEFAULT 0 NOT NULL,
bounce_score double precision DEFAULT 0 NOT NULL,
reset_bounce_score_after timestamp without time zone
);
Do schema.sql
3 curtidas
Obrigado, você está certo. Parece que há mais do que eu lembro de ter trabalhado antes.
3 curtidas
Obrigado por apontar o arquivo relacionado 
Como topics_entered existe na função get_base_user_array, assim como outras colunas… isso parece ser um bug?
1 curtida
Há campos em que me interessei que não estavam presentes na exportação (por volta de 1 a 2 anos atrás). Assumi que era intencional e não um erro, mas nunca verifiquei mais a fundo. A disponibilidade das exportações passou a ser restrita apenas aos administradores, e, sem dados reais para trabalhar, a dificuldade aumentou, o interesse diminuiu e algumas responsabilidades da vida real encerraram esse caminho.
Sem olhar com mais atenção, uma suposição ousada é que, se não houver alterações no núcleo, um plugin poderia facilmente obter valores das tabelas e adicioná-los à exportação em CSV. Mas acho que o plugin Data Explorer é um bom candidato para uma exportação personalizada.
Na maior parte, meu interesse atual mudou de manipular arquivos do núcleo restritos aos administradores para criar usuárioscripts personalizados.
Talvez, com um consenso suficiente, a exportação atual possa ser alterada?
3 curtidas
Escrevi a consulta necessária para isso:
SELECT
u.username_lower AS "username",
stats.days_visited
FROM users u
LEFT JOIN user_stats stats ON stats.user_id = u.id
ORDER BY u.id
Embora esses dados sejam realmente úteis no relatório de lista de usuários para obter algumas informações.
Obrigado @Mittineague 
5 curtidas