mirror of
https://github.com/discourse/discourse.git
synced 2024-12-24 00:13:44 +08:00
3be4924b99
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)
31 lines
779 B
Ruby
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)
|
|
#
|