• Не получается вывести данные в массив?

    @RidgeA
    все правильно. Функция getData всегда будет возвращать undefined
    результат надо в callback функции обрабатывать
    Ответ написан
    1 комментарий
  • Как работает запись фото/видео до нажатия на кнопку (Live Photo, etc.)?

    Ocelot
    @Ocelot
    Видео пишется в циклический буфер, новые кадры перезаписываются поверх старых. В момент нажатия на кнопку то, что было в буфере, сохраняется в файл. Это и будут те 1,5-30 сек видео до нажатия.
    Ответ написан
    Комментировать
  • Как отключить псевдоэлементы в медиа запросах?

    PavelMonro
    @PavelMonro
    В телефонах нет hover эффектов, вернее они есть в файле, но как Вы себе представляете наведение в телефоне? Там есть только нажатие.
    Ответ написан
    3 комментария
  • Как обработать многомерный массив?

    evgeniy8705
    @evgeniy8705
    Повелитель вселенной
    1
    for (let i = 0; i < data.length; i += 1) {
      for (let j = 0; j < data[i][`beer_names`].length; j += 1) {
        console.log(data[i][`beer_names`][j]);
      }
    }


    2
    for (let outer of data) {
      for (let inner of outer[`beer_names`]) {
        console.log(inner);
      }
    }


    3
    for (let outer of data) {
      outer[`beer_names`].forEach(value => console.log(value));
    }


    4
    data.forEach(value => value[`beer_names`].forEach(value => console.log(value)));
    Ответ написан
    Комментировать
  • Как корректно сделать связку в геме the_role?

    AlexanderMint
    @AlexanderMint
    Web Developer
    Сразу скажу что данный гем не использовал, но напишу как можно сделать иначе, вдруг пригодится...

    Пример что ниже описывает как можно реализовать простую роль или роль к "компании"

    Модель Role
    class Role < ApplicationRecord
      belongs_to :user
      belongs_to :company, optional: true
    
      validates :user, :name, presence: true
      enum name: %i[admin manager]
    end


    И например отрывок из модели User
    has_many :roles, dependent: :destroy
    
    def create_role(role_name, company = nil)
      roles.create(name: Role.names[role_name], company: company)
    end
    
    def role?(role_name, company = nil)
      if company.present?
        roles.where(name: Role.names[role_name], company: company).any?
      else
        roles.where(name: Role.names[role_name]).any?
      end
    end
    
    def admin?
      role? 'admin'
    end
    
    def manager?(company)
      role? 'manager'
    end


    Дальше все просто

    # Fake
    user = User.first
    company = Company.first


    Создать роль администратора:
    user.create_role :admin

    Создать роль владельца компании:
    user.create_role :manager, company

    Проверить роль администратора:
    user.admin?

    Проверить роль к компании:
    user.manager? company

    А ограничить доступ "по ролям" можно простым гемом pundit
    Возможно где то опечатался, писал от руки
    Ответ написан
    Комментировать