Sha256: be88956c5f47c958524ef07399944ddfb0e1eff020e9e52460121d24c1d702d5
Contents?: true
Size: 1.84 KB
Versions: 7
Compression:
Stored size: 1.84 KB
Contents
# -*- encoding: utf-8 -*- require 'timeout' class Question < ActiveRecord::Base attr_accessible :body, :shared, :solved, :note default_scope :order => 'id DESC' scope :public_questions, where(:shared => true) scope :private_questions, where(:shared => false) scope :solved, where(:solved => true) scope :unsolved, where(:solved => false) belongs_to :user, :validate => true has_many :answers, :dependent => :destroy validates_associated :user validates_presence_of :user, :body searchable do text :body, :answer_body string :username time :created_at time :updated_at do last_updated_at end boolean :shared boolean :solved integer :answers_count integer :manifestation_id, :multiple => true do answers.collect(&:items).flatten.collect{|i| i.manifestation.id} end end acts_as_taggable_on :tags enju_ndl_crd paginates_per 10 def self.crd_per_page 5 end def answer_body text = "" self.reload self.answers.each do |answer| text += answer.body end return text end def username self.user.try(:username) end def last_updated_at if answers.last time = answers.last.updated_at end if time if time > updated_at time else updated_at end else updated_at end end end # == Schema Information # # Table name: questions # # id :integer not null, primary key # user_id :integer not null # body :text # shared :boolean default(TRUE), not null # answers_count :integer default(0), not null # deleted_at :datetime # state :string(255) # solved :boolean default(FALSE), not null # note :text # created_at :datetime not null # updated_at :datetime not null #
Version data entries
7 entries across 7 versions & 1 rubygems