configatron gemを使用するときに、毎回名前空間を入力しないようにする方法はありますか?言う、あなたは持っています
configatron.email.pop.address = 1
configatron.email.pop.port = 2
どういうわけか一度だけ入力してポートとアドレスを設定できますconfigatron.email.pop
か?
configatron gemを使用するときに、毎回名前空間を入力しないようにする方法はありますか?言う、あなたは持っています
configatron.email.pop.address = 1
configatron.email.pop.port = 2
どういうわけか一度だけ入力してポートとアドレスを設定できますconfigatron.email.pop
か?
あなたができる簡単なことの1つはこれです。
configatron.email.pop.tap do|pop|
pop.address = 'localhost'
pop.port = 22
end
またはこれさえ。
pop = configatron.email.pop
pop.address = 'localhost'
pop.port = 22
configatronオブジェクトにシングルトンメソッドを追加することもできます。
class << configatron
def pop; email.pop; end
end
configatron.pop.address = 'localhost'
configatron.pop.port = 22
またはこれさえ。
class << configatron
def pop_address; email.pop.address; end
def pop_address=(addr); email.pop.address = addr; end
end
configatron.pop_address = 'address'
しかし、これは物事を壊してしまう可能性があります(configatronはmethod_missingで動作すると思います)。また、タイピングをあまり節約できませんが、いくつかの名前空間の奥深くに隠されているものへの便利なショートカットを作成できます。
たぶん、ここでは冗長性を持ってそれを突き出すべきです。