Is it possible to pass a model name as a variable?


#1

Hi all,
Is it possible to pass a model name as a variable?
For example in controller there is a method like this,

def list
var = User.find(:all)
end

where in var we heve collected all data from users table. If i edit the
above code like the one below, will it do the same work?

def list(modl)
var = tab.find(:all)
end

def hi
tab = User
list(tab)
end

someone please help.

thanks,
shanmu


#2

Yes it will but you have a bug in your code, it should be:

def list(modl)

On Wed, Jan 21, 2009 at 9:14 AM, Shanmu G. <
removed_email_address@domain.invalid> wrote:

above code like the one below, will it do the same work?

someone please help.

thanks,
shanmu

Posted via http://www.ruby-forum.com/.


Andrew T.
http://ramblingsonrails.com
http://www.linkedin.com/in/andrewtimberlake

“I have never let my schooling interfere with my education” - Mark Twain


#3

Andrew T. wrote:

On Wed, Jan 21, 2009 at 9:14 AM, Shanmu G. <
removed_email_address@domain.invalid> wrote:

above code like the one below, will it do the same work?

someone please help.

thanks,
shanmu

Posted via http://www.ruby-forum.com/.

Yes it will but you have a bug in your code, it should be:

def list(modl)
var = modl.find(:all) #Must call find on modl, not tab
end

def hi
tab = User
list(tab)
end

Can be simplified as:
def list(modl)
modl.find(:all)
end

def hi
list(User)
end


Andrew T.
http://ramblingsonrails.com
http://www.linkedin.com/in/andrewtimberlake

“I have never let my schooling interfere with my education” - Mark Twain

Hi andrews thanks for ur reply. its working. thanks for ur optimization
too

regards,
shanmu


#4

On Wed, Jan 21, 2009 at 9:14 AM, Shanmu G. <
removed_email_address@domain.invalid> wrote:

above code like the one below, will it do the same work?

someone please help.

thanks,
shanmu

Posted via http://www.ruby-forum.com/.

Yes it will but you have a bug in your code, it should be:

def list(modl)
var = modl.find(:all) #Must call find on modl, not tab
end

def hi
tab = User
list(tab)
end

Can be simplified as:
def list(modl)
modl.find(:all)
end

def hi
list(User)
end


Andrew T.
http://ramblingsonrails.com
http://www.linkedin.com/in/andrewtimberlake

“I have never let my schooling interfere with my education” - Mark Twain