blob: 07291032a65406b33b1fda06d3a2ab94b0b7dd03 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
|
require File.dirname(__FILE__) + '/../../inflector' unless defined? Inflector
module ActiveSupport #:nodoc:
module CoreExtensions #:nodoc:
module String #:nodoc:
# Makes it possible to do "posts".singularize that returns "post" and "MegaCoolClass".underscore that returns "mega_cool_class".
module Inflections
def pluralize
Inflector.pluralize(self)
end
def singularize
Inflector.singularize(self)
end
def camelize(first_letter = :upper)
case first_letter
when :upper then Inflector.camelize(self, true)
when :lower then Inflector.camelize(self, false)
end
end
alias_method :camelcase, :camelize
def titleize
Inflector.titleize(self)
end
alias_method :titlecase, :titleize
def underscore
Inflector.underscore(self)
end
def dasherize
Inflector.dasherize(self)
end
def demodulize
Inflector.demodulize(self)
end
def tableize
Inflector.tableize(self)
end
def classify
Inflector.classify(self)
end
# Capitalizes the first word and turns underscores into spaces and strips _id, so "employee_salary" becomes "Employee salary"
# and "author_id" becomes "Author".
def humanize
Inflector.humanize(self)
end
def foreign_key(separate_class_name_and_id_with_underscore = true)
Inflector.foreign_key(self, separate_class_name_and_id_with_underscore)
end
def constantize
Inflector.constantize(self)
end
end
end
end
end
|