Module: DmRails
- Defined in:
- lib/dm_rails.rb,
lib/dm_rails/railtie.rb,
lib/dm_rails/version.rb,
lib/dm_rails/introspection.rb
Overview
dm-rails —— 让 Rails 经 MySQL 协议代理(ShardingSphere-Proxy)运行在达梦 DM8 上。
启用条件(满足其一):
ENV = "1" (或兼容旧开关 ENV = "1")
可配置项(环境变量):
DM_RAILS_VIEW —— 达梦侧列结构视图名,默认 dm_rails_columns(见 sql/dm_rails_columns.sql)
Defined Under Namespace
Modules: Introspection
Classes: Railtie
Constant Summary
collapse
- VERSION =
"0.1.1"
Class Attribute Summary collapse
Class Method Summary
collapse
Class Attribute Details
.json_columns ⇒ Object
27
28
29
30
31
32
|
# File 'lib/dm_rails.rb', line 27
def json_columns
@json_columns ||= ENV.fetch("DM_RAILS_JSON_COLUMNS", "").split(",").each_with_object({}) do |pair, h|
tbl, col = pair.strip.split(".", 2)
(h[tbl] ||= []) << col if tbl && col
end
end
|
Class Method Details
.enabled? ⇒ Boolean
14
15
16
|
# File 'lib/dm_rails.rb', line 14
def enabled?
ENV["DM_RAILS_ENABLED"] == "1" || ENV["DM_PROXY"] == "1"
end
|
.view_name ⇒ Object
18
19
20
|
# File 'lib/dm_rails.rb', line 18
def view_name
ENV.fetch("DM_RAILS_VIEW", "dm_rails_columns")
end
|
.view_sql ⇒ Object
达梦侧辅助视图的建视图 SQL(用达梦客户端在业务 schema 下执行,勿经代理执行)
35
36
37
38
|
# File 'lib/dm_rails.rb', line 35
def view_sql
File.read(File.expand_path("../sql/dm_rails_columns.sql", __dir__))
.gsub("dm_rails_columns", view_name)
end
|