Abstract superclass for model

Hi,

I am using ‘set_table_name’ in all my models, I want one abstract class
which extends from ActiveRecord::Base and all my model should extends
from this abstract class. i will write setter method in abstrct class
which will set table name also i am able to override that method in my
model. my question is this is possible in rails? how to implement this
in rails?

e.g:-

class Abstract < ActiveRecord::Base
def set_table_name(table_name)
return “prefix” + table_name
end
end

class Photo < Abstract
? From here hoe to make a call for set_table_name
end

On Aug 25, 6:07 am, Sunny B. [email protected] wrote:

Hi,

I am using ‘set_table_name’ in all my models, I want one abstract class
which extends from ActiveRecord::Base and all my model should extends
from this abstract class. i will write setter method in abstrct class
which will set table name also i am able to override that method in my
model. my question is this is possible in rails? how to implement this
in rails?

If all you want to do is add a prefix, I’d just set
Abstract.table_name_prefix

Fred

try something like this. U need not call set_table_name from child class
as
long as model name
matches with database table using prefix string.

class Abstract < ActiveRecord::Base
set_table_name “some_prefix_#{self.to_s.tableize}”
end

If you want to override then

class Photo < Abstract
set_table_name “some_different_table_from regular pattern”
end

On Wed, Aug 25, 2010 at 10:37 AM, Sunny B.
[email protected]wrote:

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


Sandip


blog www.funonrails.com
twitter @sandipransing

This forum is not affiliated to the Ruby language, Ruby on Rails framework, nor any Ruby applications discussed here.

| Privacy Policy | Terms of Service | Remote Ruby Jobs