Я выполняю простой поиск по Net: LDAP, и при выводе атрибута записи, который может отсутствовать для каждой записи, я получаю сообщение об ошибке "NoMethodError: неопределенный метод 'some_attribute'"
это код:
require 'rubygems'
require 'net/ldap'
ldap = Net::LDAP.new
ldap.host = 'ldap.example.com'
ldap.port = 389
if ldap.bind
filter = Net::LDAP::Filter.eq( "sn", "Smith" )
treebase = "ou=people,o=company"
ldap.search( :base => treebase, :filter => filter, :return_result => false) do |entry|
puts #{entry.some_attribute}
end
end
else
puts "bind unsuccessful"
end
Я также пытался сделать:
if entry.respond_to?(some_attribute)
puts "#{entry.some_attribute}"
end
Это не сработало, он возвращает значение false для каждой записи (когда некоторые записи имеют атрибут).