before_validation :valid_encode
- cattr_accessor :valid_encode_columns, :visible_count_options
- @@valid_encode_columns = []
- @@visible_count_options = {}
def self.singular
- 'Item'
+ self.to_s
end
def self.plural
- 'Items'
+ self.singular.pluralize
end
def self.item_name
self.singular.underscore
end
+ def self.item?
+ true
+ end
+
+ def self.content?
+ false
+ end
+
def self.path_name with_engine = false
self.plural.underscore
end
+ def self.valid_encode_columns
+ []
+ end
+
+ def self.visible_count_options
+ nil
+ end
+
def self.list_where
''
end
self.count self.visible_count_options
end
+ def self.visible_count_options
+ []
+ end
+
#InstanceMethods
def item_name
self.class.item_name
end
+ def extend_column
+ nil
+ end
+
+ def extend_item_name
+ self.extend_column ? self.attributes[self.extend_column] : self.item_name
+ end
+
+ def form_name
+ self.extend_item_name
+ end
+
def valid_encode
self.class.valid_encode_columns.each do |a|
next if attributes[a] == nil