我想在Rails中使用模型但不将其存储在DB中。例如,我们说我有一个RSS阅读器。我会从其他站点下载一些RSS数据,然后创建具有特定模型的对象并显示它们以供使用。我不想将这些对象存储在数据库中。我该怎么办?
答案 0 :(得分:2)
我认为你的问题很容易通过创建一个类来解决,或者你可以使用ActiveModel,它允许相同的行为而不将其存储在db中。
class RssReader
#include any behaviour you like
include ActiveModel::Validations
include ActiveModel::Conversion
extend ActiveModel::Naming
end
有一个非常好的轨道广播:
您也可以查看(Rails 4)
答案 1 :(得分:0)
你正在寻找无表格模型,关于这一点有很多问题:
和一个方便的railscast!
答案 2 :(得分:0)
在rails 2.3中你可以这样做:
class OrderSession < ActiveRecord::Base
def self.columns() @columns ||= []; end
column :orderable_id, :integer
column :orderable_type, :string
column :subscription, :boolean
column :interval, :integer
column :quantity, :float
column :number, :integer
column :only_with_main_cart, :boolean
column :start_on, :date
attr_accessor :choice_item
attr_accessor :interval_choice_item_1
attr_accessor :interval_choice_item_2
validates_presence_of :orderable_id
validates_presence_of :orderable_type
validates_presence_of :interval
validates_numericality_of :quantity, :greater_than => 0
validates_inclusion_of :subscription, :in => [true, false]
validates_inclusion_of :only_with_main_cart, :in => [true, false]
end
我在用户确认之前用它来存储购物车信息