How to create ActiveRecord tableless Model in Rails 3

后端 未结 7 2282
终归单人心
终归单人心 2020-12-30 03:05

I am trying to create a Active Record tableless Model. My user.rb looks like this

class User < ActiveRecord::Base

  class_inheritable_accessor :columns

         


        
7条回答
  •  慢半拍i
    慢半拍i (楼主)
    2020-12-30 03:54

    As mentioned by stephenmurdoch in rails 3.0+ you can use the method outlined in railscasts 219

    I had to make a slight modification to get this to work:

    class Message
      include ActiveModel::Validations
      include ActiveModel::Conversion
      extend ActiveModel::Naming
    
      attr_accessor :name, :email, :content
    
      validates_presence_of :name
      validates_format_of :email, :with => /^[-a-z0-9_+\.]+\@([-a-z0-9]+\.)+[a-z0-9]{2,4}$/i
      validates_length_of :content, :maximum => 500
    
      def initialize(attributes = {})
        unless attributes.nil?
          attributes.each do |name, value|
            send("#{name}=", value)
          end
        end
      end
    
      def persisted?
        false
      end
    end
    

提交回复
热议问题