Sha256: 55067adbc5567af5005e9e7f474ee25f7692d6c951fcdab1be4818553198d87a

Contents?: true

Size: 644 Bytes

Versions: 4

Compression:

Stored size: 644 Bytes

Contents

# frozen_string_literal: true

require 'active_support/concern'

module BetterRecord
  module Authenticatable
    extend ActiveSupport::Concern
    include BetterRecord::JWT::ControllerMethods

    included do
      before_action :check_user
    end

    def method_missing(method, *args)
      begin
        if BetterRecord.attributes[method.to_sym]
          m = method.to_sym
          self.class.define_method m do
            BetterRecord.__send__ m
          end
          BetterRecord.__send__ m
        else
          raise NoMethodError
        end
      rescue NoMethodError
        super(method, *args)
      end
    end


  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
better_record-0.8.4 lib/better_record/concerns/controllers/authenticatable.rb
better_record-0.8.3 lib/better_record/concerns/controllers/authenticatable.rb
better_record-0.8.2 lib/better_record/concerns/controllers/authenticatable.rb
better_record-0.8.1 lib/better_record/concerns/controllers/authenticatable.rb