Có hai ứng dụng. Một trong những ứng dụng đang sử dụng đường ray 4.1.2. Ứng dụng khác đang sử dụng đường ray 5.0.1. Đây là cách hoạt động của ứng dụng rails 5: nó kiểm tra xem người dùng đã đăng nhập chưa:Sửa Lỗi này: NameError (hằng số không khởi tạo ActiveRecord :: ConnectionAdapters :: Mysql2Adapter :: Column)
- Nếu người dùng đăng nhập: thì người dùng có thể tiếp tục.
- Nếu người dùng là NOT đăng nhập, sau đó nó chuyển hướng họ đến ứng dụng đường ray 4 (là nơi người dùng có thể đăng nhập). Sau khi người dùng đăng nhập bằng ứng dụng đường ray 4: người dùng sẽ có thể truy cập ứng dụng đường ray 5 không có vấn đề gì.
Tôi hiện đang sử dụng đá quý sau trong Rails của tôi 5 dự án:
gem 'mysql2', '~> 0.4.4'
gem 'activerecord-session_store', '~> 1.0'
sau đó tôi có sau trong config/initializers/session_store.rb
tập tin của tôi:
Rails.application.config.session_store :active_record_store, :key => ‘SOME_KEY’
Hiện nay: nếu người dùng là không phải đã đăng nhập: khi đó nó chuyển hướng thành công người dùng. Vấn đề là khi người dùng được đăng nhập tôi nhận được lỗi này khi đăng nhập người dùng cố gắng truy cập vào các đường ray 5 ứng dụng:.
NameError (uninitialized constant ActiveRecord::ConnectionAdapters::Mysql2Adapter::Column)
- tôi nhận thấy rằng các ứng dụng được thành công kết nối với cơ sở dữ liệu
- Ứng dụng cũng xuất hiện để truy cập bảng
sessions
theo yêu cầu ban đầu (khi người dùng chưa đăng nhập).
Bất kỳ đề xuất nào về những gì đang kích hoạt lỗi này và cách sửa lỗi? Cuối cùng: nó gần như xuất hiện như thể rails 5
không tương thích với activerecord-session_store
và mysql2
.
Phải có thêm thông tin trong các dòng trước hoặc sau lỗi về nơi bắt nguồn. – Iceman
@Iceman Thật không may: chỉ có dấu vết ngăn xếp. Đây là dòng cuối cùng: 'activesupport (5.0.1) lib/active_support/inflector/methods.rb: 270: trong' const_get'' – Neil
Hãy xem kỹ hơn, phải có một số mã mà bạn đang gọi cho người dùng đã đăng nhập tạo lỗi này. – Iceman