Перейти к публикации
View in the app

A better way to browse. Learn more.

Дизайн и модификация Invision Community

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

buildDisplayData или свой запрос?

Опубликовано:

buildDisplayData() возвращает огромный массив с кучей не нужной информации. Если вы, допустим, делаете не большой виджет и вам нужны только ники и аватарки юзеров, вы загружаете их с помощью buildDisplayData() или пишете свой запрос, где берете только ники и автарки?

Если второй вариант, то в какой таблице лежат аватарки, а то в members их нету :)

Рекомендованные сообщения

Опубликовано:

Если вы, допустим, делаете не большой виджет и вам нужны только ники и аватарки юзеров, вы загружаете их с помощью buildDisplayData() или пишете свой запрос

Когда как. Если лень писать - использую стандартные методы, если получается чересчур много запросов в этом месте пишу свои запросы. Где находятся аватары вы уже наверняка сами нашли - profile_portal

Опубликовано:
buildDisplayData() возвращает огромный массив с кучей не нужной информации.

IPSMember::buildDisplayData в общем случае не создает новую информацию и не выполняет дополнительных запросов. Он лишь перерабатывает полученную ранее от IPSMember::load информацию в удобный для отображения вид. Он может выполнить дополнительные запросы, если вы передадите не полный массив данных, либо же вообще самостоятельно выполнить IPSMember::load, если передается только member_id, но в общем случае никакими запросами и лишними нагрузками вызов метода не череват, так что за избыточность данных можно не переживать - она обходится минимальной ценой.

 

Если вы, допустим, делаете не большой виджет и вам нужны только ники и аватарки юзеров

"Аватарки" можно получить отдельно с помощью метода IPSMember::buildProfilePhoto. Но, опять же, на практике всегда выгоднее передавать в шаблоны полный и де-факто стандартный набор данных пользователя, чтобы потом не сталкиваться с проблемой расширения функционала.

 

Излишняя экономия иногда бывает только в вред, вспомните хотя бы этот случай. Автор хука решил обойтись своими запросами, и, как результат, в дальнейшем при желании оснастить его новыми возможностями, вроде всплывающих карточек профиля и отображения фото рядом с ником, приходится лезть в код....

Создайте аккаунт или войдите в него для комментирования

Сейчас на странице 0

  • Нет пользователей, просматривающих эту страницу.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.