Ruby on Rails 3 (3.1) ActiveModel Associations (tableless nested models)

非 Y 不嫁゛ 提交于 2019-12-01 04:10:17

You simply can't do it that way. It is not active record.

You can check ActiveModel documentation (and source code) at :

https://github.com/rails/rails/tree/master/activemodel

I guess you have to do it old fashion way, using an array of chapters and a reference to the book in the chapters.

Hope this helps!

With rails versions >= 2.3.x you can use the activerecord-tableless gem. With that gem you can have associations and validations without a database.

Update

I have been added as author to the gem and I have updated the gem to support newer Rails versions. So now we can have tableless models with associations in Rails versions >= 2.3

Eric

You can check out this answer for another way to do it.

class Tableless < ActiveRecord::Base
    def self.columns() @columns ||= []; end

    def self.column(name, sql_type = nil, default = nil, null = true)
        columns << ActiveRecord::ConnectionAdapters::Column.new(name.to_s, default, sql_type.to_s, null)
    end 

    attr_accessor :id, :name, :value

    has_many :stuff_things
    has_many :things, :through => :stuff_things

end
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!