我在我的课堂上这样做
Salesforce::Adapters::Person::MAPPINGS.invert.keys.each do |key|
delegate key.to_sym,
"#{key}=".to_sym,
to: :person,
prefix: true
end
Salesforce::Adapters::EmergencyContact::MAPPINGS.invert.keys.each do |key|
delegate key.to_sym,
"#{key}=".to_sym,
to: :emergency_contact,
prefix: true
end
我想干,知道我该怎么做吗?我试图在模块的类内迭代,但没有成功。
你可以试试const_get
:
def dry_class module, type
Object.const_get("Salesforce::Adapters::#{module}")::MAPPINGS.invert.keys.each do |key|
delegate key.to_sym,
"#{key}=".to_sym,
to: type,
prefix: true
end
end