给出以下层次结构
class Content < ActiveRecord::Base end
class Page < Content end
class Post < Content end
是否可以使用以下样式创建例如页面内容(间接):
c = Content.new c.type = Page c.title ='测试' c.save!
看起来type也是对象上的ruby方法。
答案 0 :(得分:0)
我建议做这样的事情......
klass = "Page"
klass.constantize.create(:title=>'title')
如果您只是使用'type'属性,那么您将无法在对象的子类中覆盖任何方法。
答案 1 :(得分:-1)
当然,但你必须使用write_attribute
c.write_attribute(:type, "Page")
c.save