Agnieszka Figiel
2006-Mar-30 10:48 UTC
[Rails] design question - user data from two different sources
hello, how would you go about this: I would like my app to be able to alternatively draw user data from two sources - a users table in a database and an LDAP server. By alternatively I mean it would be set up to draw from one of these sources, not both at the same time. I would like to have objects of type Person which I would use regardless of where this person is stored, so both the active record model and the ldap user model would have a common set of functions that they would be responding to and the application can ignore where the data is pulled from. so what would be an elegant way of achieving this? I would appreciate a suggestion of some pattern of organising these models. What I''ve come up with so far are 3 classes - DbPerson and LDAPPerson, and a Person class which is supposed to be something like an interface. It has an if clause that checks the USE_LDAP constant. Depending on this test it sets a @my_class variable. Then it defines wrappers to all the common functions of the two models and calls the methods of the relevant model by using the @my_class var. This works but it seems clumsy to me so I''m looking for insights :) Thanks! -- Agnieszka -- Posted via http://www.ruby-forum.com/.