Предварительный просмотр Google Sheets: есть ли способ?

Я нашел несколько старых тем (почти 10 лет?) о предварительном просмотре Google Таблиц или об отсутствии такового. Есть ли способ заставить это работать сегодня?

Вот почему я спрашиваю.

В нашем сообществе мы отслеживаем важную информацию в Google Таблице. В Facebook предварительный просмотр связанной таблицы в посте фактически представляет собой снимок текущего состояния таблицы. Это очень удобно, потому что нам даже не обязательно открывать её, если цветовая кодировка в таблице дает нам достаточно информации (так часто и бывает).

Вот скриншот типичного поста, чтобы показать, что я имею в виду:

Ячейки с разными цветами дают нам обзор ситуации с первого взгляда, не нужно переходить по ссылке на Google Таблицу (если только мы не хотим посмотреть подробности).

Есть ли способ добиться такого рода «встраивания» без тем в Discourse?

В Google Docs для рабочего стола перейдите в меню «Файл» → «Поделиться», затем нажмите Опубликовать → «Встроить».

Затем вы можете вставить сгенерированный iframe в Discourse.

Необходимо добавить домен Google Docs в список разрешённых URL для iframe в административной панели Discourse.

Результат выглядит следующим образом:

Окно остаётся маленьким, поэтому это не очень практично…

Спасибо! Определённо выглядит так, что это сработает. Знаете ли вы, можно ли сделать то же самое на мобильном устройстве? Я предполагаю, что как минимум половина наших участников работает только с мобильных устройств :fearful:

Примечание: следующий текст был объединён (спасибо @merefield и @darkpixlz) из другой темы, которую я только что создал… с точно таким же вопросом, как и в декабре. Он выпал из моей памяти (авария на лыжах произошла почти год назад, друзья, но я до сих пор не полностью восстановился для некоторых вещей, очевидно — спасибо за ваше терпение).

В моём сообществе у каждого участника есть таблица отслеживания, которую они обычно делятся при публикации запроса о помощи. Сейчас на Facebook работает «предпросмотр», показывающий снимок последней части таблицы:

Это очень полезно (хотя бы одно, за что Facebook стоит использовать!), поскольку даёт нам обзор необходимых данных даже без перехода к самой таблице. Конечно, мы часто кликаем, но это позволяет получить общее представление о том, с какой ситуацией мы имеем дело.

Я прочитал здесь, что для работы onebox в Discourse документ Google должен быть опубликован. Я попробовал сделать это со своим документом, но, похоже, это не работает:

Даже указано, что лист приватен, хотя это не так! Вот результат при использовании ссылки «поделиться ссылкой» — та же ситуация:

Есть ли способ получить что-то лучшее? Это фундаментальный аспект нашей работы: главная цель нашей деятельности — помогать людям отслеживать и интерпретировать уровень глюкозы в крови, который они измеряют дома, и эта модель таблицы является нашим «волшебным» инструментом для этого.

Я предполагаю, что если Facebook может отображать осмысленный снимок таблицы Google, то и в Discourse должен быть способ это реализовать?

(оу, неприятно, удачи с восстановлением!!! :heart:)

помогло ли предложение от @Canapin?

Давайте посмотрим: это «как-то работает», но iframe действительно крошечный :-/ — боюсь, в таком виде он практически непригоден для использования:

Есть ли способ исправить размер iframe?

Если возможно, дайте ссылку на этот пост. Я смогу проверить CSS-классы и сказать, можно ли это сделать.

Если нужно что-то сделать с помощью небольшого количества CSS — это отличная новость!

Если это сработает, я пытаюсь понять, как сделать это простым для моих не технарей. Есть ли способ определить своего рода «пользовательский шорткод», чтобы они могли один раз вставить код встраивания в свою электронную таблицу (например, в пользовательское поле), а затем просто писать что-то вроде %my_spreadsheet% (или что-то подобное) в своём посте, чтобы iframe отображался?

Я быстро посмотрел: специального класса для встраивания iframe с документами нет, но я заметил, что его max-width был установлен в 100%, но не реальная ширина. Если задать width: 100%, он становится шире, а высоту можно выбрать на ваше усмотрение.

.post__regular .cooked {
    iframe {
      max-width: 100%;
      max-height: min(1000px, 200vh);
      width: 100%;
      height: 500px;
    }
}

Я бы лично добавил это как компонент сайта, чтобы он применялся ко всем пользователям глобально.

Да, я просто добавил CSS в компонент, который создал для таких небольших «настроек сообщества», спасибо!

Теперь вопрос в том, как облегчить людям вставку этого iframe в свои посты (потому что если им придется переходить в Google Таблицы, публиковать, встраивать, копировать код, возвращаться и вставлять, этого не произойдет).

Решение с iframe теперь действительно очень удобно, так как оно имеет правильный размер: мы можем прокручивать таблицу, чтобы увидеть остальные значения, не открывая её. И это даже отлично работает на мобильных устройствах! Спасибо, это действительно значительная часть проблемы решена.

К сожалению, если не углубляться в более продвинутый JavaScript, я не вижу, как это можно реализовать. Я не очень хорошо знаком с JS API Discourse, но кажется, что всё сводится к тому, чтобы взять URL, обернуть его в тег <iframe src="..."></iframe> и заменить /edit на /pubhtml?widget=true&amp;headers=false.

Я бы порекомендовал создать обучающий пост, чтобы проинформировать участников вашего сообщества о том, как правильно экспортировать данные, если это вызывает серьёзные опасения. Либо вы всегда можете запросить официальную поддержку onebox в канале Contribute > Feature.

У меня не так много знаний о JS, но если вы видите возможное решение в этом направлении, я готов в этом разобраться.
Отклоняясь немного от оригинальной темы, но я думаю, что моё «идеальное решение» заключалось бы в возможности добавить кнопку на панель инструментов, которая «добавляет электронную таблицу пользователя» :sweat_smile:.

Обязательно опубликую инструкции и учебное пособие, но моя аудитория — это в основном «широкая публика», и даже с учебным пособием такие вещи представляют собой сложную задачу.

Да, это вполне возможно, просто я не представляю, чтобы кто-то делал это бесплатно в теме поддержки. Уверен, если у вас есть немного свободных средств, кто-то сможет помочь вам в канале Marketplace или в другом месте!

Отсюда и мечта! :wink:

Огромное спасибо за вашу помощь, я очень рад, что у меня есть хотя бы жизнеспособное решение для этих электронных таблиц!

Блин, хотел отметить оба поста — твой и Canapin — как решение, но можно отметить только один :-/

А как насчёт кнопки в редакторе, которая добавляет iframe при нажатии? Это вполне реализуемо в компоненте темы.

Затем можно заменить applySurround на addText и напрямую добавить содержимое iframe.

Будет ли это настраиваться для каждого пользователя?