discourse/app/models/user_custom_field.rb
Osama Sayegh 3be4924b99
DEV: Move array type custom fields to JSON type in automation (#26939)
The automation plugin has 4 custom field types that are array typed. However, array typed custom fields are deprecated and should be migrated to JSON type.

This commit does a couple of things:

1. Migrate all four custom fields to JSON
2. Fix a couple of small bugs that have been discovered while migrating the custom fields to JSON (see the comments on this commit's PR for details https://github.com/discourse/discourse/pull/26939)
2024-05-10 18:47:12 +03:00

31 lines
779 B
Ruby

# frozen_string_literal: true
class UserCustomField < ActiveRecord::Base
include CustomField
belongs_to :user
scope :searchable,
-> do
joins(
"INNER JOIN user_fields ON user_fields.id = REPLACE(user_custom_fields.name, 'user_field_', '')::INTEGER AND user_fields.searchable IS TRUE AND user_custom_fields.name like 'user_field_%'",
)
end
end
# == Schema Information
#
# Table name: user_custom_fields
#
# id :integer not null, primary key
# user_id :integer not null
# name :string(256) not null
# value :text
# created_at :datetime not null
# updated_at :datetime not null
#
# Indexes
#
# index_user_custom_fields_on_user_id_and_name (user_id,name)
#