Я создал класс, который я использую для хранения данных конфигурации. В настоящее время класс выглядит следующим образом:Переменные класса класса Ruby легко
class Configed
@@username = "[email protected]"
@@password = "password"
@@startpage = "http://www.example.com/login"
@@nextpage = "http://www.example.com/product"
@@loginfield = "username"
@@passwordfield = "password"
@@parser = "button"
@@testpage = "http://www.example.com/product/1"
@@button1 = "button1"
def self.username
@@username
end
def self.password
@@password
end
def self.startpage
@@startpage
end
def self.nextpage
@@nextpage
end
def self.loginfield
@@loginfield
end
def self.passwordfield
@@passwordfield
end
def self.parser
@@parser
end
def self.testpage
@@testpage
end
def self.button1
@@button1
end
end
Чтобы получить доступ к переменным я использую:
# Config file
require_relative 'Configed'
# Parse config
startpage = Configed.startpage
loginfield = Configed.loginfield
passwordfield = Configed.passwordfield
username = Configed.username
password = Configed.password
nextpage = Configed.nextpage
parser = Configed.parser
testpage = Configed.testpage
Это не очень модульным. Добавление дополнительных данных конфигурации необходимо указать в трех местах.
Есть ли лучший способ добиться этого?
Вместо этого используйте OpenStruct. –