একটি বিদ্যমান রেল 4/5/6 প্রকল্পের জন্য আপনার config/application.rb
ফাইলে আপনার নীচের লাইনটি রয়েছে:
require 'rails/all' # or `require "rails"' in newer versions
(রেফারেন্স হিসাবে যে লাইনটি এই ফাইলটি লোড করছে )
সুতরাং সমস্ত লোড করার পরিবর্তে আপনাকে অবশ্যই প্রতিটি লাইব্রেরি পৃথকভাবে লোড করতে হবে:
# active_record is what we're not going to use it, so comment it "just in case"
# require "active_record/railtie"
# This is not loaded in rails/all but inside active_record so add it if
# you want your models work as expected
require "active_model/railtie"
# And now the rest
require "action_controller/railtie"
require "action_mailer/railtie"
require "action_view/railtie"
require "active_job/railtie" # Only for Rails >= 4.2
require "action_cable/engine" # Only for Rails >= 5.0
require "sprockets/railtie"
require "rails/test_unit/railtie"
# All these depend on active_record, so they should be excluded also
# require "action_text/engine" # Only for Rails >= 6.0
# require "action_mailbox/engine" # Only for Rails >= 6.0
# require "active_storage/engine" # Only for Rails >= 5.2
আপনার রেল সংস্করণ সম্পর্কিত কী লোড করতে হবে তা জানতে মন্তব্যগুলিতে নজর রাখুন।
নিম্নলিখিত ফাইলগুলি পরীক্ষা করুন (আপনার কাছে সেগুলি রয়েছে) এবং নীচের লাইনে মন্তব্য করুন:
# package.json
"@rails/activestorage": "^6.0.0",
# app/javascript/packs/application.js
require("@rails/activestorage").start()
# bin/setup
system! 'bin/rails db:prepare'
# config/environments/development.rb
config.active_storage.service = :local # For Rails >= 5.2
config.active_record.migration_error = :page_load
config.active_record.verbose_query_logs = true
# config/environments/test.rb
config.active_storage.service = :test # For Rails >= 5.2
# config/environments/production.rb
config.active_storage.service = :local # For Rails >= 5.2
config.active_record.dump_schema_after_migration = false
# spec/rails_helper.rb
ActiveRecord::Migration.maintain_test_schema!
# test/test_helper.rb
fixtures :all # In case you're using fixtures
# Only for Rails >= 5.0
#config/initializers/new_framework_defaults.rb
Rails.application.config.active_record.belongs_to_required_by_default = true
এছাড়াও ActiveRecord::Base
আপনার মডেল ফাইলগুলির যে কোনও রেফারেন্স মুছে ফেলুন (বা যদি প্রয়োগ হয় তবে কেবল ফাইলগুলি মুছুন)। উদাহরণস্বরূপ, স্বয়ংক্রিয়রিত app/models/application_record.rb
ফাইল।