Create user field with options

Woohoo, I figured out a way thanks to a random code snippets found on the web.

In local development, run like so:

~/discourse> rails runner script/import_scripts/test.rb

test.rb

require "mysql2"

require File.expand_path(File.dirname(__FILE__) + "/base.rb")



class ImportScripts::UserFieldCreator < ImportScripts::Base

  def initialize
    super
  end


  def execute
     @interests_field = UserField.find_by_name("My interests5")
     unless @interests_field
       @interests_field = UserField.create(name: "My interests5", description: "Do you like stuff5?", field_type: "text", editable: true, required: true, show_on_profile: true, show_on_user_card: true)
     end

     @interests_field = UserField.find_by_name("My interests7")
     unless @interests_field
       @interests_field = UserField.create(name: "My interests7", description: "Do you like stuff6?", field_type: "dropdown", editable: true, required: true, show_on_profile: true, show_on_user_card: true)
        UserFieldOption.create(user_field_id: @interests_field.id, value: 'not really')
        UserFieldOption.create(user_field_id: @interests_field.id, value: 'a bit')
        UserFieldOption.create(user_field_id: @interests_field.id, value: 'some')
        UserFieldOption.create(user_field_id: @interests_field.id, value: 'a lot')
     end
  end
end

if __FILE__==$0
  ImportScripts::UserFieldCreator.new.perform
end