আমি নিশ্চিত যে ত্রুটির TenantIdLoader
মডিউলটির আসল সামগ্রীটির সাথে কোনও সম্পর্ক নেই sure পরিবর্তে, এর ActiveSupport
নির্ভরতাগুলির সাথে কিছু করার আছে ।
আমি এই ত্রুটিটি পেয়েছি বলে মনে হচ্ছে না। আমি যা পড়েছি তা থেকে, কারণ এটি হয় ActiveRecord::Base
পুনরায় লোড হচ্ছে বা Company::TenantIdLoader
পুনরায় লোড হচ্ছে, এবং এটি কোনওরকম এটি যোগাযোগ করছে না। অনুগ্রহ করে সাহায্য করবেন! আমি সত্যিই ails.২ রেলগুলিতে আপগ্রেড হতে সক্ষম হতে চাই।
সম্পাদনা
আমি এখন শিখেছি কারণ এটি উল্লেখ করছি Tenant
যা স্বয়ংক্রিয়ভাবে পুনরায় লোড হচ্ছে। আমার যদিও ক্লাসটি আসলে রেফারেন্স করতে সক্ষম হওয়া দরকার, সুতরাং কেউ কীভাবে এই কাছাকাছি যেতে জানেন?
কনফিগ / application.rb
config.autoload_paths += %W( #{config.root}/lib/company )
কনফিগ / initializers / company.rb
ActionMailer::Base.send(:include, Company::TenantIdLoader)
lib / অনুপস্থিত কোম্পানী / tenant_id_loader.rb
module Company
module TenantIdLoader
extend ActiveSupport::Concern
included do
cattr_accessor :tenant_dependency
self.tenant_dependency = {}
after_initialize do
self.tenant_id = Tenant.active.id if self.class.tenant_dependent? and self.new_record? and Tenant.active.present? and !Tenant.active.zero?
end
end
# class methods to be mixed in
module ClassMethods
# returns true if this model's table has a tenant_id
def tenant_dependent?
self.tenant_dependency[self.table_name] ||= self.column_names.include?('tenant_id')
end
end
end
end