Flair_url всегда NULL в SQL-запросе?

Я работаю над плагином, который использует изображение флейра группы.

Когда я выполняю SQL-запрос для получения flair_url из таблицы groups, он возвращает NULL для каждой группы, несмотря на то, что изображение загружено. Плагин Discourse Data Explorer также подтверждает это (SELECT flair_url from groups).

Однако страница /g.json предоставляет корректный flair_url:

В чём дело? Есть ли какая-то особенность получения этого URL, которая затрудняет его извлечение через SQL-запрос? Я всё ещё довольно новичок в Ruby и Rails, поэтому не знаю точно, где в исходном коде Discourse искать причину. Я заметил на строке 9 в app/models/group.rb, что flair_url добавлен в список “ignored_columns” — не уверен, какие у этого могут быть последствия, если вообще есть.

Просто интересно, является ли появление этого столбца NULL намеренным, и если да, то буду признателен за любые советы по получению этих данных из Ruby-бэкенда моего плагина.

Похоже, данные из этого столбца в какой-то момент были перемещены. flair_upload_id выглядит многообещающе:

SELECT g.name,
       g.flair_upload_id, 
       u.url, 
       u.original_filename
FROM groups g
JOIN uploads u on g.flair_upload_id = u.id

Спасибо! Это кажется немного запутанным, но сработало! :grin:

Да, столбец flair_url больше не используется — мы говорим Rails игнорировать его в нашем Ruby-коде:

Похоже, что так было уже довольно давно. @vinothkannans, есть ли причины, по которым нам не стоит удалить его в миграции после развёртывания?

Да, нам стоит отказаться от этого сейчас. Мы давно уже прошли тот этап.