Rails table_name_prefix 未按预期工作
Rails table_name_prefix is not working as expected
我正在使用 Rails 4。我有 app/models/admin.rb
和 app/models/admin/retention_email.rb
类似的东西:
# app/models/admin.rb
module Admin
def self.table_name_prefix
"global_admin_"
end
end
# app/models/admin/retention_email.rb
module Admin
class RetentionEmail < ApplicationRecord
end
end
现在我期待 Admin::RetentionEmail
使用 global_admin_retention_emails
table 但似乎我仍在使用 retention_emails
:
2.4.1 (main):0 > Admin::RetentionEmail.table_name
=> "retention_emails"
有什么解决办法吗?
添加 config/initializers/namespace.rb
为:
require Rails.root.join('app', 'models', 'admin')
我正在使用 Rails 4。我有 app/models/admin.rb
和 app/models/admin/retention_email.rb
类似的东西:
# app/models/admin.rb
module Admin
def self.table_name_prefix
"global_admin_"
end
end
# app/models/admin/retention_email.rb
module Admin
class RetentionEmail < ApplicationRecord
end
end
现在我期待 Admin::RetentionEmail
使用 global_admin_retention_emails
table 但似乎我仍在使用 retention_emails
:
2.4.1 (main):0 > Admin::RetentionEmail.table_name
=> "retention_emails"
有什么解决办法吗?
添加 config/initializers/namespace.rb
为:
require Rails.root.join('app', 'models', 'admin')