Skip to content

Instantly share code, notes, and snippets.

@hibri
Created August 2, 2010 14:48
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save hibri/504745 to your computer and use it in GitHub Desktop.
Save hibri/504745 to your computer and use it in GitHub Desktop.
require "activerecord"
class ActiveRecord::Base
class <<self
def hidden_columns(*hidden)
write_inheritable_array("hidden_column", hidden.collect(&:to_s))
end
def columns_hidden
read_inheritable_attribute("hidden_column") || []
end
def columns
unless defined?(@columns) && @columns
@columns = connection.columns(table_name, "#{name} Columns").delete_if { |c| columns_hidden.member?(c.name) }
@columns.each { |column| column.primary = column.name == primary_key }
end
@columns
end
end
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment