Как запросить логическое значение, используя ActiveRecord :: TypedStore в рельсах - PullRequest
1 голос
/ 02 ноября 2019

Каков синтаксис для запроса логического значения с помощью ActiveRecord :: TypedStore ( Github Link )?

Попытка описанного ниже не работает? и выдает следующую ошибку:

PG :: UndefinedFunction: ERROR: оператор не существует: text = логическое

current_user
  .companies
  .where("holiday_request_settings ->> :key = :value",
         key: "enable_holiday_requests",
         value: true)

Если я попробую следующее, я не получурезультаты:

current_user
  .companies
  .where("holiday_request_settings ->> :key = :value",
         key: "enable_holiday_requests",
         value: "true")

В настоящее время компания имеет следующие данные:

holiday_request_settings: {
  "enable_holiday_requests"=>true,
  "holiday_allowance_days"=>20
}

Это код модели компании:

class Company < ApplicationRecord
  has_many :holiday_requests

  typed_store :holiday_request_settings, coder: JSON do |s|
    s.boolean :enable_holiday_requests, default: false
    s.integer :holiday_allowance_days
  end

end

Миграция для компанииМодель:

add_column :companies, :holiday_request_settings, :json

Есть идеи?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...