Thanks! I think that for Kirbybase I will get the method using the fieldname and for the other case I will use the Object#respond_to?. Marcelo Paniagua Ryan Leavengood escribióº > Marcelo Paniagua wrote: > >> Hi there! >> >> I'm using Kirbybase database and it has the peculiar way to access >> fields data though methods. Is it posible to call such methods >> passing the fieldname in a dinamic way? >> >> instead of >> >> client_id = table.client_id >> >> I would like to use sometime like >> >> field = 'client_id' >> client_id = table.field or something like that. > > > There are at least two basic options: > > 1. Call Object#send: > > field = 'client_id' > client_id = table.send(field) > > 2. Use Object#method to get a method, then call it: > > field = 'client_id' > method = table.method(field) > method.call > >> This is also applicable to a program that I'm developing, in which >> I want to find if a class has a given method... for example, I want to >> find if a class Card has an "onplay" method. >> Thanks > > > You can ask an instance of Card if it responds to that method: > > card = Card.new > if card.respond_to?('onplay') > # Do something > end > > You may also want to research the method 'method_missing' which allows > for a lot of interesting tricks. > > Regards, > Ryan > > -- Este correo esta libre de virus!