Method: ActiveRecord::ClassMethods#server_method

Defined in:
lib/reactive_record/active_record/class_methods.rb

#server_method(name, default: nil) ⇒ Object



224
225
226
227
228
229
230
231
232
233
234
# File 'lib/reactive_record/active_record/class_methods.rb', line 224

def server_method(name, default: nil)
  server_methods[name] = { default: default }
  define_method(name) do |*args|
    vector = args.count.zero? ? name : [[name]+args]
    @backing_record.reactive_get!(vector, nil)
  end
  define_method("#{name}!") do |*args|
    vector = args.count.zero? ? name : [[name]+args]
    @backing_record.reactive_get!(vector, true)
  end
end