magick_columns 0.0.2 → 0.0.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/README.md +26 -1
- data/lib/magick_columns.rb +27 -12
- data/lib/magick_columns/defaults.rb +0 -8
- data/lib/magick_columns/i18n.rb +25 -0
- data/lib/magick_columns/{locale → locales}/en.yml +0 -0
- data/lib/magick_columns/{locale → locales}/es.yml +0 -0
- data/lib/magick_columns/railtie.rb +7 -1
- data/lib/magick_columns/rules.rb +3 -3
- data/lib/magick_columns/tokenizer.rb +10 -4
- data/lib/magick_columns/version.rb +1 -1
- data/test/dummy/log/test.log +256 -0
- metadata +6 -5
data/README.md
CHANGED
@@ -52,7 +52,7 @@ And you get the people born in the XXI century =)
|
|
52
52
|
## Custom configuration
|
53
53
|
|
54
54
|
If you want to define your own rules, or replace some existing configuration add
|
55
|
-
in config/initializers one ruby file, for example magick_columns_config.rb
|
55
|
+
in `config/initializers` one ruby file, for example `magick_columns_config.rb`
|
56
56
|
|
57
57
|
```ruby
|
58
58
|
MagickColumns.setup do |config|
|
@@ -76,6 +76,31 @@ MagickColumns.setup do |config|
|
|
76
76
|
end
|
77
77
|
```
|
78
78
|
|
79
|
+
## I18n
|
80
|
+
|
81
|
+
If you want to translate the built in rules, you can =). Add a
|
82
|
+
`magick_columns.en.yml` in your `config/locales` and you are done...
|
83
|
+
|
84
|
+
```yml
|
85
|
+
'en':
|
86
|
+
magick_columns:
|
87
|
+
and:
|
88
|
+
- and
|
89
|
+
or:
|
90
|
+
- or
|
91
|
+
from:
|
92
|
+
- from
|
93
|
+
- since
|
94
|
+
until:
|
95
|
+
- to
|
96
|
+
- until
|
97
|
+
today:
|
98
|
+
- today
|
99
|
+
- now
|
100
|
+
```
|
101
|
+
|
102
|
+
You can see more examples in the `magick_columns/locales` folder.
|
103
|
+
|
79
104
|
## How to contribute
|
80
105
|
|
81
106
|
If you find what you might think is a bug:
|
data/lib/magick_columns.rb
CHANGED
@@ -1,42 +1,49 @@
|
|
1
1
|
module MagickColumns
|
2
2
|
autoload :DEFAULTS, 'magick_columns/defaults'
|
3
|
-
autoload :I18N_DEFAULTS, 'magick_columns/defaults'
|
4
3
|
autoload :TOKENIZE_RULES, 'magick_columns/rules'
|
5
4
|
autoload :REPLACEMENT_RULES, 'magick_columns/rules'
|
6
5
|
autoload :Tokenizer, 'magick_columns/tokenizer'
|
6
|
+
autoload :I18n, 'magick_columns/i18n'
|
7
7
|
|
8
8
|
class << self
|
9
9
|
private
|
10
10
|
|
11
11
|
def _default_setup_for(config)
|
12
|
-
|
12
|
+
-> {
|
13
|
+
translation = I18n.magick_translate(config)
|
13
14
|
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
15
|
+
if translation.respond_to?(:map)
|
16
|
+
translation.map { |c| Regexp.quote(c) }.join('|')
|
17
|
+
else
|
18
|
+
translation
|
19
|
+
end
|
20
|
+
}
|
19
21
|
end
|
20
22
|
end
|
21
23
|
|
24
|
+
DYNAMIC_READERS = [
|
25
|
+
:and_operators, :or_operators, :from_operators, :until_operators,
|
26
|
+
:today_operators
|
27
|
+
]
|
28
|
+
|
22
29
|
# Strings considered "and" spliters
|
23
|
-
|
30
|
+
mattr_writer :and_operators
|
24
31
|
@@and_operators = _default_setup_for :and
|
25
32
|
|
26
33
|
# Strings considered "or" spliters
|
27
|
-
|
34
|
+
mattr_writer :or_operators
|
28
35
|
@@or_operators = _default_setup_for :or
|
29
36
|
|
30
37
|
# Strings considered "from" terms (like "from 01/01/2012")
|
31
|
-
|
38
|
+
mattr_writer :from_operators
|
32
39
|
@@from_operators = _default_setup_for :from
|
33
40
|
|
34
41
|
# Strings considered "until" terms (like "until 01/01/2012")
|
35
|
-
|
42
|
+
mattr_writer :until_operators
|
36
43
|
@@until_operators = _default_setup_for :until
|
37
44
|
|
38
45
|
# Strings considered "today" strings (like "from today")
|
39
|
-
|
46
|
+
mattr_writer :today_operators
|
40
47
|
@@today_operators = _default_setup_for :today
|
41
48
|
|
42
49
|
# Rules to replace text in the natural string
|
@@ -47,6 +54,14 @@ module MagickColumns
|
|
47
54
|
mattr_accessor :tokenize_rules
|
48
55
|
@@tokenize_rules = TOKENIZE_RULES.dup
|
49
56
|
|
57
|
+
DYNAMIC_READERS.each do |m|
|
58
|
+
instance_eval <<-RUBY
|
59
|
+
def #{m}
|
60
|
+
@@#{m}.respond_to?(:call) ? @@#{m}.call : @@#{m}
|
61
|
+
end
|
62
|
+
RUBY
|
63
|
+
end
|
64
|
+
|
50
65
|
# Setup method for plugin configuration
|
51
66
|
def self.setup
|
52
67
|
yield self
|
@@ -0,0 +1,25 @@
|
|
1
|
+
module MagickColumns
|
2
|
+
module I18n
|
3
|
+
def self.locale_dir
|
4
|
+
File.expand_path('../locales', __FILE__)
|
5
|
+
end
|
6
|
+
|
7
|
+
def self.load_path
|
8
|
+
Dir["#{locale_dir}/*.{rb,yml}"]
|
9
|
+
end
|
10
|
+
|
11
|
+
def self.magick_translate(keys, options = {})
|
12
|
+
if defined? ::I18n
|
13
|
+
defaults = Array(keys).dup
|
14
|
+
defaults << Proc.new if block_given?
|
15
|
+
::I18n.translate(
|
16
|
+
defaults.shift,
|
17
|
+
options.merge(default: defaults, scope: :magick_columns, raise: true)
|
18
|
+
)
|
19
|
+
else
|
20
|
+
key = Array === keys ? keys.first : keys
|
21
|
+
yield key, options
|
22
|
+
end
|
23
|
+
end
|
24
|
+
end
|
25
|
+
end
|
File without changes
|
File without changes
|
@@ -1,9 +1,15 @@
|
|
1
1
|
module MagickColumns
|
2
2
|
class Railtie < Rails::Railtie
|
3
|
-
initializer 'magick_columns
|
3
|
+
initializer 'magick_columns' do
|
4
4
|
ActiveSupport.on_load :active_record do
|
5
5
|
require 'magick_columns/active_record'
|
6
6
|
end
|
7
|
+
|
8
|
+
self.class.add_locale_path config
|
9
|
+
end
|
10
|
+
|
11
|
+
def self.add_locale_path(config)
|
12
|
+
config.i18n.railties_load_path.unshift(*MagickColumns::I18n.load_path)
|
7
13
|
end
|
8
14
|
end
|
9
15
|
end
|
data/lib/magick_columns/rules.rb
CHANGED
@@ -2,18 +2,18 @@
|
|
2
2
|
module MagickColumns
|
3
3
|
TOKENIZE_RULES = {
|
4
4
|
from: {
|
5
|
-
pattern: /(\A\s*|\s+)(#{MagickColumns.from_operators})\s+(\S+)
|
5
|
+
pattern: -> { /(\A\s*|\s+)(#{MagickColumns.from_operators})\s+(\S+)/ },
|
6
6
|
tokenizer: ->(match) { { operator: '>=', term: match[3] } }
|
7
7
|
},
|
8
8
|
until:{
|
9
|
-
pattern: /(\A\s*|\s+)(#{MagickColumns.until_operators})\s+(\S+)
|
9
|
+
pattern: -> { /(\A\s*|\s+)(#{MagickColumns.until_operators})\s+(\S+)/ },
|
10
10
|
tokenizer: ->(match) { { operator: '<=', term: match[3] } }
|
11
11
|
}
|
12
12
|
}
|
13
13
|
|
14
14
|
REPLACEMENT_RULES = {
|
15
15
|
today: {
|
16
|
-
pattern: /#{MagickColumns.today_operators}
|
16
|
+
pattern: -> { /#{MagickColumns.today_operators}/ },
|
17
17
|
replacement: ->(match) { Date.today.to_s(:db) }
|
18
18
|
}
|
19
19
|
}
|
@@ -37,16 +37,22 @@ module MagickColumns
|
|
37
37
|
terms = []
|
38
38
|
|
39
39
|
MagickColumns.replacement_rules.each do |rule, options|
|
40
|
-
|
41
|
-
|
40
|
+
pattern = options[:pattern].respond_to?(:call) ?
|
41
|
+
options[:pattern].call : options[:pattern]
|
42
|
+
|
43
|
+
while(match = term_copy.match(pattern))
|
44
|
+
term_copy.sub!(pattern, options[:replacement].call(match))
|
42
45
|
end
|
43
46
|
end
|
44
47
|
|
45
48
|
MagickColumns.tokenize_rules.each do |rule, options|
|
46
|
-
|
49
|
+
pattern = options[:pattern].respond_to?(:call) ?
|
50
|
+
options[:pattern].call : options[:pattern]
|
51
|
+
|
52
|
+
while(match = term_copy.match(pattern))
|
47
53
|
terms << options[:tokenizer].call(match)
|
48
54
|
|
49
|
-
term_copy.sub!(
|
55
|
+
term_copy.sub!(pattern, '')
|
50
56
|
end
|
51
57
|
end
|
52
58
|
|
data/test/dummy/log/test.log
CHANGED
@@ -2759,3 +2759,259 @@
|
|
2759
2759
|
[1m[35m (0.1ms)[0m ROLLBACK
|
2760
2760
|
[1m[36m (0.1ms)[0m [1mBEGIN[0m
|
2761
2761
|
[1m[35m (0.2ms)[0m ROLLBACK
|
2762
|
+
[1m[36m (0.2ms)[0m [1mBEGIN[0m
|
2763
|
+
[1m[35m (1.0ms)[0m SELECT COUNT(*) FROM "people" WHERE (((name ILIKE '%3012-03-19%' OR birth = '3012-03-19')) OR ((name ILIKE '%luke%')))
|
2764
|
+
[1m[36mPerson Load (0.5ms)[0m [1mSELECT "people".* FROM "people" WHERE (((name ILIKE '%3012-03-19%' OR birth = '3012-03-19')) OR ((name ILIKE '%luke%')))[0m
|
2765
|
+
[1m[35m (0.2ms)[0m ROLLBACK
|
2766
|
+
[1m[36m (0.1ms)[0m [1mBEGIN[0m
|
2767
|
+
[1m[35m (0.1ms)[0m ROLLBACK
|
2768
|
+
[1m[36m (0.1ms)[0m [1mBEGIN[0m
|
2769
|
+
[1m[35m (0.7ms)[0m SELECT COUNT(*) FROM "people" WHERE (((name ILIKE '%3012-03-19%' OR birth = '3012-03-19')))
|
2770
|
+
[1m[36mPerson Load (0.5ms)[0m [1mSELECT "people".* FROM "people" WHERE (((name ILIKE '%3012-03-19%' OR birth = '3012-03-19'))) LIMIT 1[0m
|
2771
|
+
[1m[35m (0.4ms)[0m SELECT COUNT(*) FROM "people" WHERE (((name ILIKE '%3032-03-19%' OR birth = '3032-03-19')))
|
2772
|
+
[1m[36mPerson Load (0.5ms)[0m [1mSELECT "people".* FROM "people" WHERE (((name ILIKE '%3032-03-19%' OR birth = '3032-03-19'))) LIMIT 1[0m
|
2773
|
+
[1m[35m (0.4ms)[0m SELECT COUNT(*) FROM "people" WHERE (((name ILIKE '%2012-03-19%' OR birth = '2012-03-19')))
|
2774
|
+
[1m[36m (0.1ms)[0m [1mROLLBACK[0m
|
2775
|
+
[1m[35m (0.1ms)[0m BEGIN
|
2776
|
+
[1m[36m (0.5ms)[0m [1mSELECT COUNT(*) FROM "people" WHERE (((name ILIKE '%obi@%' OR email ILIKE '%obi@%')))[0m
|
2777
|
+
[1m[35mPerson Load (0.5ms)[0m SELECT "people".* FROM "people" WHERE (((name ILIKE '%obi@%' OR email ILIKE '%obi@%'))) LIMIT 1
|
2778
|
+
[1m[36m (0.4ms)[0m [1mSELECT COUNT(*) FROM "people" WHERE (((name ILIKE '%@sw.com%' OR email ILIKE '%@sw.com%')))[0m
|
2779
|
+
[1m[35mPerson Load (0.4ms)[0m SELECT "people".* FROM "people" WHERE (((name ILIKE '%@sw.com%' OR email ILIKE '%@sw.com%')))
|
2780
|
+
[1m[36m (0.4ms)[0m [1mSELECT COUNT(*) FROM "people" WHERE (((name ILIKE '%nobody@sw.com%' OR email ILIKE '%nobody@sw.com%')))[0m
|
2781
|
+
[1m[35m (0.2ms)[0m ROLLBACK
|
2782
|
+
[1m[36m (0.1ms)[0m [1mBEGIN[0m
|
2783
|
+
[1m[35m (0.8ms)[0m SELECT COUNT(*) FROM "articles" WHERE (((name ILIKE '%1%' OR code = '1')))
|
2784
|
+
[1m[36mArticle Load (0.5ms)[0m [1mSELECT "articles".* FROM "articles" WHERE (((name ILIKE '%1%' OR code = '1'))) LIMIT 1[0m
|
2785
|
+
[1m[35m (0.9ms)[0m SELECT COUNT(*) FROM "articles" WHERE (((name ILIKE '%100%' OR code = '100')))
|
2786
|
+
[1m[36m (0.2ms)[0m [1mROLLBACK[0m
|
2787
|
+
[1m[35m (0.1ms)[0m BEGIN
|
2788
|
+
[1m[36m (0.2ms)[0m [1mROLLBACK[0m
|
2789
|
+
[1m[35m (0.4ms)[0m BEGIN
|
2790
|
+
[1m[36m (0.4ms)[0m [1mSELECT COUNT(*) FROM "people" WHERE (((name ILIKE '%obi%')))[0m
|
2791
|
+
[1m[35mPerson Load (0.5ms)[0m SELECT "people".* FROM "people" WHERE (((name ILIKE '%obi%'))) LIMIT 1
|
2792
|
+
[1m[36m (0.4ms)[0m [1mSELECT COUNT(*) FROM "people" WHERE (((name ILIKE '%skywalker%')))[0m
|
2793
|
+
[1m[35mPerson Load (0.4ms)[0m SELECT "people".* FROM "people" WHERE (((name ILIKE '%skywalker%')))
|
2794
|
+
[1m[36m (0.5ms)[0m [1mSELECT COUNT(*) FROM "people" WHERE (((name ILIKE '%anakin%') AND (name ILIKE '%skywalker%')))[0m
|
2795
|
+
[1m[35mPerson Load (0.4ms)[0m SELECT "people".* FROM "people" WHERE (((name ILIKE '%anakin%') AND (name ILIKE '%skywalker%'))) LIMIT 1
|
2796
|
+
[1m[36m (0.5ms)[0m [1mSELECT COUNT(*) FROM "people" WHERE (((name ILIKE '%anakin%')) OR ((name ILIKE '%skywalker%')))[0m
|
2797
|
+
[1m[35mPerson Load (1.3ms)[0m SELECT "people".* FROM "people" WHERE (((name ILIKE '%anakin%')) OR ((name ILIKE '%skywalker%')))
|
2798
|
+
[1m[36m (0.5ms)[0m [1mSELECT COUNT(*) FROM "people" WHERE (((name ILIKE '%nobody%')))[0m
|
2799
|
+
[1m[35m (0.2ms)[0m ROLLBACK
|
2800
|
+
[1m[36m (0.2ms)[0m [1mBEGIN[0m
|
2801
|
+
[1m[35m (0.2ms)[0m ROLLBACK
|
2802
|
+
[1m[36m (0.1ms)[0m [1mBEGIN[0m
|
2803
|
+
[1m[35m (0.3ms)[0m ROLLBACK
|
2804
|
+
[1m[36m (0.1ms)[0m [1mBEGIN[0m
|
2805
|
+
[1m[35m (0.6ms)[0m ROLLBACK
|
2806
|
+
[1m[36m (0.2ms)[0m [1mBEGIN[0m
|
2807
|
+
[1m[35m (1.0ms)[0m SELECT COUNT(*) FROM "people" WHERE (((name ILIKE '%3012-03-19%' OR birth = '3012-03-19')) OR ((name ILIKE '%luke%')))
|
2808
|
+
[1m[36mPerson Load (0.5ms)[0m [1mSELECT "people".* FROM "people" WHERE (((name ILIKE '%3012-03-19%' OR birth = '3012-03-19')) OR ((name ILIKE '%luke%')))[0m
|
2809
|
+
[1m[35m (0.2ms)[0m ROLLBACK
|
2810
|
+
[1m[36m (0.2ms)[0m [1mBEGIN[0m
|
2811
|
+
[1m[35m (0.1ms)[0m ROLLBACK
|
2812
|
+
[1m[36m (0.1ms)[0m [1mBEGIN[0m
|
2813
|
+
[1m[35m (0.5ms)[0m SELECT COUNT(*) FROM "people" WHERE (((name ILIKE '%3012-03-19%' OR birth = '3012-03-19')))
|
2814
|
+
[1m[36mPerson Load (0.5ms)[0m [1mSELECT "people".* FROM "people" WHERE (((name ILIKE '%3012-03-19%' OR birth = '3012-03-19'))) LIMIT 1[0m
|
2815
|
+
[1m[35m (0.4ms)[0m SELECT COUNT(*) FROM "people" WHERE (((name ILIKE '%3032-03-19%' OR birth = '3032-03-19')))
|
2816
|
+
[1m[36mPerson Load (0.5ms)[0m [1mSELECT "people".* FROM "people" WHERE (((name ILIKE '%3032-03-19%' OR birth = '3032-03-19'))) LIMIT 1[0m
|
2817
|
+
[1m[35m (0.5ms)[0m SELECT COUNT(*) FROM "people" WHERE (((name ILIKE '%2012-03-19%' OR birth = '2012-03-19')))
|
2818
|
+
[1m[36m (0.1ms)[0m [1mROLLBACK[0m
|
2819
|
+
[1m[35m (0.2ms)[0m BEGIN
|
2820
|
+
[1m[36m (0.4ms)[0m [1mSELECT COUNT(*) FROM "people" WHERE (((name ILIKE '%obi@%' OR email ILIKE '%obi@%')))[0m
|
2821
|
+
[1m[35mPerson Load (0.4ms)[0m SELECT "people".* FROM "people" WHERE (((name ILIKE '%obi@%' OR email ILIKE '%obi@%'))) LIMIT 1
|
2822
|
+
[1m[36m (0.5ms)[0m [1mSELECT COUNT(*) FROM "people" WHERE (((name ILIKE '%@sw.com%' OR email ILIKE '%@sw.com%')))[0m
|
2823
|
+
[1m[35mPerson Load (0.5ms)[0m SELECT "people".* FROM "people" WHERE (((name ILIKE '%@sw.com%' OR email ILIKE '%@sw.com%')))
|
2824
|
+
[1m[36m (0.5ms)[0m [1mSELECT COUNT(*) FROM "people" WHERE (((name ILIKE '%nobody@sw.com%' OR email ILIKE '%nobody@sw.com%')))[0m
|
2825
|
+
[1m[35m (0.2ms)[0m ROLLBACK
|
2826
|
+
[1m[36m (0.1ms)[0m [1mBEGIN[0m
|
2827
|
+
[1m[35m (0.9ms)[0m SELECT COUNT(*) FROM "articles" WHERE (((name ILIKE '%1%' OR code = '1')))
|
2828
|
+
[1m[36mArticle Load (0.5ms)[0m [1mSELECT "articles".* FROM "articles" WHERE (((name ILIKE '%1%' OR code = '1'))) LIMIT 1[0m
|
2829
|
+
[1m[35m (0.5ms)[0m SELECT COUNT(*) FROM "articles" WHERE (((name ILIKE '%100%' OR code = '100')))
|
2830
|
+
[1m[36m (0.2ms)[0m [1mROLLBACK[0m
|
2831
|
+
[1m[35m (0.2ms)[0m BEGIN
|
2832
|
+
[1m[36m (0.1ms)[0m [1mROLLBACK[0m
|
2833
|
+
[1m[35m (0.2ms)[0m BEGIN
|
2834
|
+
[1m[36m (0.4ms)[0m [1mSELECT COUNT(*) FROM "people" WHERE (((name ILIKE '%obi%')))[0m
|
2835
|
+
[1m[35mPerson Load (0.4ms)[0m SELECT "people".* FROM "people" WHERE (((name ILIKE '%obi%'))) LIMIT 1
|
2836
|
+
[1m[36m (0.4ms)[0m [1mSELECT COUNT(*) FROM "people" WHERE (((name ILIKE '%skywalker%')))[0m
|
2837
|
+
[1m[35mPerson Load (0.4ms)[0m SELECT "people".* FROM "people" WHERE (((name ILIKE '%skywalker%')))
|
2838
|
+
[1m[36m (0.4ms)[0m [1mSELECT COUNT(*) FROM "people" WHERE (((name ILIKE '%anakin%') AND (name ILIKE '%skywalker%')))[0m
|
2839
|
+
[1m[35mPerson Load (0.4ms)[0m SELECT "people".* FROM "people" WHERE (((name ILIKE '%anakin%') AND (name ILIKE '%skywalker%'))) LIMIT 1
|
2840
|
+
[1m[36m (0.5ms)[0m [1mSELECT COUNT(*) FROM "people" WHERE (((name ILIKE '%anakin%')) OR ((name ILIKE '%skywalker%')))[0m
|
2841
|
+
[1m[35mPerson Load (0.4ms)[0m SELECT "people".* FROM "people" WHERE (((name ILIKE '%anakin%')) OR ((name ILIKE '%skywalker%')))
|
2842
|
+
[1m[36m (0.4ms)[0m [1mSELECT COUNT(*) FROM "people" WHERE (((name ILIKE '%nobody%')))[0m
|
2843
|
+
[1m[35m (0.1ms)[0m ROLLBACK
|
2844
|
+
[1m[36m (0.2ms)[0m [1mBEGIN[0m
|
2845
|
+
[1m[35m (0.2ms)[0m ROLLBACK
|
2846
|
+
[1m[36m (0.2ms)[0m [1mBEGIN[0m
|
2847
|
+
[1m[35m (0.2ms)[0m ROLLBACK
|
2848
|
+
[1m[36m (0.1ms)[0m [1mBEGIN[0m
|
2849
|
+
[1m[35m (0.2ms)[0m ROLLBACK
|
2850
|
+
[1m[36m (0.1ms)[0m [1mBEGIN[0m
|
2851
|
+
[1m[35m (0.2ms)[0m ROLLBACK
|
2852
|
+
[1m[36m (0.2ms)[0m [1mBEGIN[0m
|
2853
|
+
[1m[35m (0.1ms)[0m ROLLBACK
|
2854
|
+
[1m[36m (0.1ms)[0m [1mBEGIN[0m
|
2855
|
+
[1m[35m (0.1ms)[0m ROLLBACK
|
2856
|
+
[1m[36m (0.1ms)[0m [1mBEGIN[0m
|
2857
|
+
[1m[35m (0.1ms)[0m ROLLBACK
|
2858
|
+
[1m[36m (0.1ms)[0m [1mBEGIN[0m
|
2859
|
+
[1m[35m (0.1ms)[0m ROLLBACK
|
2860
|
+
[1m[36m (0.1ms)[0m [1mBEGIN[0m
|
2861
|
+
[1m[35m (0.1ms)[0m ROLLBACK
|
2862
|
+
[1m[36m (0.1ms)[0m [1mBEGIN[0m
|
2863
|
+
[1m[35m (0.1ms)[0m ROLLBACK
|
2864
|
+
[1m[36m (0.2ms)[0m [1mBEGIN[0m
|
2865
|
+
[1m[35m (0.2ms)[0m ROLLBACK
|
2866
|
+
[1m[36m (0.1ms)[0m [1mBEGIN[0m
|
2867
|
+
[1m[35m (0.1ms)[0m ROLLBACK
|
2868
|
+
[1m[36m (0.4ms)[0m [1mBEGIN[0m
|
2869
|
+
[1m[35m (0.1ms)[0m ROLLBACK
|
2870
|
+
[1m[36m (0.1ms)[0m [1mBEGIN[0m
|
2871
|
+
[1m[35m (0.3ms)[0m ROLLBACK
|
2872
|
+
[1m[36m (0.2ms)[0m [1mBEGIN[0m
|
2873
|
+
[1m[35m (0.2ms)[0m ROLLBACK
|
2874
|
+
[1m[36m (0.1ms)[0m [1mBEGIN[0m
|
2875
|
+
[1m[35m (0.4ms)[0m ROLLBACK
|
2876
|
+
[1m[36m (0.4ms)[0m [1mBEGIN[0m
|
2877
|
+
[1m[35m (0.3ms)[0m ROLLBACK
|
2878
|
+
[1m[36m (0.1ms)[0m [1mBEGIN[0m
|
2879
|
+
[1m[35m (0.3ms)[0m ROLLBACK
|
2880
|
+
[1m[36m (0.3ms)[0m [1mBEGIN[0m
|
2881
|
+
[1m[35m (0.4ms)[0m ROLLBACK
|
2882
|
+
[1m[36m (0.2ms)[0m [1mBEGIN[0m
|
2883
|
+
[1m[35m (0.3ms)[0m ROLLBACK
|
2884
|
+
[1m[36m (0.2ms)[0m [1mBEGIN[0m
|
2885
|
+
[1m[35m (0.2ms)[0m ROLLBACK
|
2886
|
+
[1m[36m (0.1ms)[0m [1mBEGIN[0m
|
2887
|
+
[1m[35m (0.1ms)[0m ROLLBACK
|
2888
|
+
[1m[36m (0.1ms)[0m [1mBEGIN[0m
|
2889
|
+
[1m[35m (0.1ms)[0m ROLLBACK
|
2890
|
+
[1m[36m (0.1ms)[0m [1mBEGIN[0m
|
2891
|
+
[1m[35m (0.2ms)[0m ROLLBACK
|
2892
|
+
[1m[36m (0.1ms)[0m [1mBEGIN[0m
|
2893
|
+
[1m[35m (0.1ms)[0m ROLLBACK
|
2894
|
+
[1m[36m (0.1ms)[0m [1mBEGIN[0m
|
2895
|
+
[1m[35m (0.1ms)[0m ROLLBACK
|
2896
|
+
[1m[36m (0.1ms)[0m [1mBEGIN[0m
|
2897
|
+
[1m[35m (0.1ms)[0m ROLLBACK
|
2898
|
+
[1m[36m (0.1ms)[0m [1mBEGIN[0m
|
2899
|
+
[1m[35m (0.1ms)[0m ROLLBACK
|
2900
|
+
[1m[36m (0.1ms)[0m [1mBEGIN[0m
|
2901
|
+
[1m[35m (0.2ms)[0m ROLLBACK
|
2902
|
+
[1m[36m (0.2ms)[0m [1mBEGIN[0m
|
2903
|
+
[1m[35m (0.1ms)[0m ROLLBACK
|
2904
|
+
[1m[36m (0.1ms)[0m [1mBEGIN[0m
|
2905
|
+
[1m[35m (0.2ms)[0m ROLLBACK
|
2906
|
+
[1m[36m (0.2ms)[0m [1mBEGIN[0m
|
2907
|
+
[1m[35m (0.2ms)[0m ROLLBACK
|
2908
|
+
[1m[36m (0.2ms)[0m [1mBEGIN[0m
|
2909
|
+
[1m[35m (0.1ms)[0m ROLLBACK
|
2910
|
+
[1m[36m (0.1ms)[0m [1mBEGIN[0m
|
2911
|
+
[1m[35m (0.2ms)[0m ROLLBACK
|
2912
|
+
[1m[36m (0.2ms)[0m [1mBEGIN[0m
|
2913
|
+
[1m[35m (0.2ms)[0m ROLLBACK
|
2914
|
+
[1m[36m (0.1ms)[0m [1mBEGIN[0m
|
2915
|
+
[1m[35m (0.4ms)[0m ROLLBACK
|
2916
|
+
[1m[36m (0.1ms)[0m [1mBEGIN[0m
|
2917
|
+
[1m[35m (0.2ms)[0m ROLLBACK
|
2918
|
+
[1m[36m (0.2ms)[0m [1mBEGIN[0m
|
2919
|
+
[1m[35m (0.2ms)[0m ROLLBACK
|
2920
|
+
[1m[36m (0.1ms)[0m [1mBEGIN[0m
|
2921
|
+
[1m[35m (0.1ms)[0m ROLLBACK
|
2922
|
+
[1m[36m (0.1ms)[0m [1mBEGIN[0m
|
2923
|
+
[1m[35m (0.2ms)[0m ROLLBACK
|
2924
|
+
[1m[36m (0.3ms)[0m [1mBEGIN[0m
|
2925
|
+
[1m[35m (0.2ms)[0m ROLLBACK
|
2926
|
+
[1m[36m (0.2ms)[0m [1mBEGIN[0m
|
2927
|
+
[1m[35m (0.2ms)[0m ROLLBACK
|
2928
|
+
[1m[36m (0.1ms)[0m [1mBEGIN[0m
|
2929
|
+
[1m[35m (0.2ms)[0m ROLLBACK
|
2930
|
+
[1m[36m (0.2ms)[0m [1mBEGIN[0m
|
2931
|
+
[1m[35m (0.9ms)[0m SELECT COUNT(*) FROM "people" WHERE (((name ILIKE '%3012-03-19%' OR birth = '3012-03-19')) OR ((name ILIKE '%luke%')))
|
2932
|
+
[1m[36mPerson Load (0.6ms)[0m [1mSELECT "people".* FROM "people" WHERE (((name ILIKE '%3012-03-19%' OR birth = '3012-03-19')) OR ((name ILIKE '%luke%')))[0m
|
2933
|
+
[1m[35m (0.2ms)[0m ROLLBACK
|
2934
|
+
[1m[36m (0.2ms)[0m [1mBEGIN[0m
|
2935
|
+
[1m[35m (0.1ms)[0m ROLLBACK
|
2936
|
+
[1m[36m (0.1ms)[0m [1mBEGIN[0m
|
2937
|
+
[1m[35m (0.4ms)[0m SELECT COUNT(*) FROM "people" WHERE (((name ILIKE '%3012-03-19%' OR birth = '3012-03-19')))
|
2938
|
+
[1m[36mPerson Load (0.5ms)[0m [1mSELECT "people".* FROM "people" WHERE (((name ILIKE '%3012-03-19%' OR birth = '3012-03-19'))) LIMIT 1[0m
|
2939
|
+
[1m[35m (0.4ms)[0m SELECT COUNT(*) FROM "people" WHERE (((name ILIKE '%3032-03-19%' OR birth = '3032-03-19')))
|
2940
|
+
[1m[36mPerson Load (0.5ms)[0m [1mSELECT "people".* FROM "people" WHERE (((name ILIKE '%3032-03-19%' OR birth = '3032-03-19'))) LIMIT 1[0m
|
2941
|
+
[1m[35m (0.4ms)[0m SELECT COUNT(*) FROM "people" WHERE (((name ILIKE '%2012-03-19%' OR birth = '2012-03-19')))
|
2942
|
+
[1m[36m (0.1ms)[0m [1mROLLBACK[0m
|
2943
|
+
[1m[35m (0.2ms)[0m BEGIN
|
2944
|
+
[1m[36m (0.5ms)[0m [1mSELECT COUNT(*) FROM "people" WHERE (((name ILIKE '%obi@%' OR email ILIKE '%obi@%')))[0m
|
2945
|
+
[1m[35mPerson Load (0.4ms)[0m SELECT "people".* FROM "people" WHERE (((name ILIKE '%obi@%' OR email ILIKE '%obi@%'))) LIMIT 1
|
2946
|
+
[1m[36m (0.4ms)[0m [1mSELECT COUNT(*) FROM "people" WHERE (((name ILIKE '%@sw.com%' OR email ILIKE '%@sw.com%')))[0m
|
2947
|
+
[1m[35mPerson Load (0.4ms)[0m SELECT "people".* FROM "people" WHERE (((name ILIKE '%@sw.com%' OR email ILIKE '%@sw.com%')))
|
2948
|
+
[1m[36m (0.4ms)[0m [1mSELECT COUNT(*) FROM "people" WHERE (((name ILIKE '%nobody@sw.com%' OR email ILIKE '%nobody@sw.com%')))[0m
|
2949
|
+
[1m[35m (0.1ms)[0m ROLLBACK
|
2950
|
+
[1m[36m (0.1ms)[0m [1mBEGIN[0m
|
2951
|
+
[1m[35m (0.6ms)[0m SELECT COUNT(*) FROM "articles" WHERE (((name ILIKE '%1%' OR code = '1')))
|
2952
|
+
[1m[36mArticle Load (0.4ms)[0m [1mSELECT "articles".* FROM "articles" WHERE (((name ILIKE '%1%' OR code = '1'))) LIMIT 1[0m
|
2953
|
+
[1m[35m (0.5ms)[0m SELECT COUNT(*) FROM "articles" WHERE (((name ILIKE '%100%' OR code = '100')))
|
2954
|
+
[1m[36m (0.2ms)[0m [1mROLLBACK[0m
|
2955
|
+
[1m[35m (0.2ms)[0m BEGIN
|
2956
|
+
[1m[36m (0.2ms)[0m [1mROLLBACK[0m
|
2957
|
+
[1m[35m (0.1ms)[0m BEGIN
|
2958
|
+
[1m[36m (0.4ms)[0m [1mSELECT COUNT(*) FROM "people" WHERE (((name ILIKE '%obi%')))[0m
|
2959
|
+
[1m[35mPerson Load (0.4ms)[0m SELECT "people".* FROM "people" WHERE (((name ILIKE '%obi%'))) LIMIT 1
|
2960
|
+
[1m[36m (0.4ms)[0m [1mSELECT COUNT(*) FROM "people" WHERE (((name ILIKE '%skywalker%')))[0m
|
2961
|
+
[1m[35mPerson Load (0.4ms)[0m SELECT "people".* FROM "people" WHERE (((name ILIKE '%skywalker%')))
|
2962
|
+
[1m[36m (0.4ms)[0m [1mSELECT COUNT(*) FROM "people" WHERE (((name ILIKE '%anakin%') AND (name ILIKE '%skywalker%')))[0m
|
2963
|
+
[1m[35mPerson Load (0.4ms)[0m SELECT "people".* FROM "people" WHERE (((name ILIKE '%anakin%') AND (name ILIKE '%skywalker%'))) LIMIT 1
|
2964
|
+
[1m[36m (0.5ms)[0m [1mSELECT COUNT(*) FROM "people" WHERE (((name ILIKE '%anakin%')) OR ((name ILIKE '%skywalker%')))[0m
|
2965
|
+
[1m[35mPerson Load (0.4ms)[0m SELECT "people".* FROM "people" WHERE (((name ILIKE '%anakin%')) OR ((name ILIKE '%skywalker%')))
|
2966
|
+
[1m[36m (0.5ms)[0m [1mSELECT COUNT(*) FROM "people" WHERE (((name ILIKE '%nobody%')))[0m
|
2967
|
+
[1m[35m (1.3ms)[0m ROLLBACK
|
2968
|
+
[1m[36m (0.2ms)[0m [1mBEGIN[0m
|
2969
|
+
[1m[35m (0.1ms)[0m ROLLBACK
|
2970
|
+
[1m[36m (0.1ms)[0m [1mBEGIN[0m
|
2971
|
+
[1m[35m (0.2ms)[0m ROLLBACK
|
2972
|
+
[1m[36m (0.1ms)[0m [1mBEGIN[0m
|
2973
|
+
[1m[35m (0.2ms)[0m ROLLBACK
|
2974
|
+
[1m[36m (0.1ms)[0m [1mBEGIN[0m
|
2975
|
+
[1m[35m (0.9ms)[0m SELECT COUNT(*) FROM "people" WHERE (((name ILIKE '%3012-03-19%' OR birth = '3012-03-19')) OR ((name ILIKE '%luke%')))
|
2976
|
+
[1m[36mPerson Load (0.5ms)[0m [1mSELECT "people".* FROM "people" WHERE (((name ILIKE '%3012-03-19%' OR birth = '3012-03-19')) OR ((name ILIKE '%luke%')))[0m
|
2977
|
+
[1m[35m (0.2ms)[0m ROLLBACK
|
2978
|
+
[1m[36m (0.2ms)[0m [1mBEGIN[0m
|
2979
|
+
[1m[35m (0.1ms)[0m ROLLBACK
|
2980
|
+
[1m[36m (0.1ms)[0m [1mBEGIN[0m
|
2981
|
+
[1m[35m (0.5ms)[0m SELECT COUNT(*) FROM "people" WHERE (((name ILIKE '%3012-03-19%' OR birth = '3012-03-19')))
|
2982
|
+
[1m[36mPerson Load (0.5ms)[0m [1mSELECT "people".* FROM "people" WHERE (((name ILIKE '%3012-03-19%' OR birth = '3012-03-19'))) LIMIT 1[0m
|
2983
|
+
[1m[35m (0.5ms)[0m SELECT COUNT(*) FROM "people" WHERE (((name ILIKE '%3032-03-19%' OR birth = '3032-03-19')))
|
2984
|
+
[1m[36mPerson Load (0.5ms)[0m [1mSELECT "people".* FROM "people" WHERE (((name ILIKE '%3032-03-19%' OR birth = '3032-03-19'))) LIMIT 1[0m
|
2985
|
+
[1m[35m (0.4ms)[0m SELECT COUNT(*) FROM "people" WHERE (((name ILIKE '%2012-03-19%' OR birth = '2012-03-19')))
|
2986
|
+
[1m[36m (0.1ms)[0m [1mROLLBACK[0m
|
2987
|
+
[1m[35m (0.2ms)[0m BEGIN
|
2988
|
+
[1m[36m (0.5ms)[0m [1mSELECT COUNT(*) FROM "people" WHERE (((name ILIKE '%obi@%' OR email ILIKE '%obi@%')))[0m
|
2989
|
+
[1m[35mPerson Load (0.4ms)[0m SELECT "people".* FROM "people" WHERE (((name ILIKE '%obi@%' OR email ILIKE '%obi@%'))) LIMIT 1
|
2990
|
+
[1m[36m (0.4ms)[0m [1mSELECT COUNT(*) FROM "people" WHERE (((name ILIKE '%@sw.com%' OR email ILIKE '%@sw.com%')))[0m
|
2991
|
+
[1m[35mPerson Load (0.5ms)[0m SELECT "people".* FROM "people" WHERE (((name ILIKE '%@sw.com%' OR email ILIKE '%@sw.com%')))
|
2992
|
+
[1m[36m (0.5ms)[0m [1mSELECT COUNT(*) FROM "people" WHERE (((name ILIKE '%nobody@sw.com%' OR email ILIKE '%nobody@sw.com%')))[0m
|
2993
|
+
[1m[35m (0.1ms)[0m ROLLBACK
|
2994
|
+
[1m[36m (0.1ms)[0m [1mBEGIN[0m
|
2995
|
+
[1m[35m (0.7ms)[0m SELECT COUNT(*) FROM "articles" WHERE (((name ILIKE '%1%' OR code = '1')))
|
2996
|
+
[1m[36mArticle Load (0.4ms)[0m [1mSELECT "articles".* FROM "articles" WHERE (((name ILIKE '%1%' OR code = '1'))) LIMIT 1[0m
|
2997
|
+
[1m[35m (0.4ms)[0m SELECT COUNT(*) FROM "articles" WHERE (((name ILIKE '%100%' OR code = '100')))
|
2998
|
+
[1m[36m (0.2ms)[0m [1mROLLBACK[0m
|
2999
|
+
[1m[35m (0.2ms)[0m BEGIN
|
3000
|
+
[1m[36m (0.2ms)[0m [1mROLLBACK[0m
|
3001
|
+
[1m[35m (0.1ms)[0m BEGIN
|
3002
|
+
[1m[36m (0.5ms)[0m [1mSELECT COUNT(*) FROM "people" WHERE (((name ILIKE '%obi%')))[0m
|
3003
|
+
[1m[35mPerson Load (0.5ms)[0m SELECT "people".* FROM "people" WHERE (((name ILIKE '%obi%'))) LIMIT 1
|
3004
|
+
[1m[36m (0.5ms)[0m [1mSELECT COUNT(*) FROM "people" WHERE (((name ILIKE '%skywalker%')))[0m
|
3005
|
+
[1m[35mPerson Load (0.4ms)[0m SELECT "people".* FROM "people" WHERE (((name ILIKE '%skywalker%')))
|
3006
|
+
[1m[36m (0.5ms)[0m [1mSELECT COUNT(*) FROM "people" WHERE (((name ILIKE '%anakin%') AND (name ILIKE '%skywalker%')))[0m
|
3007
|
+
[1m[35mPerson Load (0.4ms)[0m SELECT "people".* FROM "people" WHERE (((name ILIKE '%anakin%') AND (name ILIKE '%skywalker%'))) LIMIT 1
|
3008
|
+
[1m[36m (0.4ms)[0m [1mSELECT COUNT(*) FROM "people" WHERE (((name ILIKE '%anakin%')) OR ((name ILIKE '%skywalker%')))[0m
|
3009
|
+
[1m[35mPerson Load (0.4ms)[0m SELECT "people".* FROM "people" WHERE (((name ILIKE '%anakin%')) OR ((name ILIKE '%skywalker%')))
|
3010
|
+
[1m[36m (0.4ms)[0m [1mSELECT COUNT(*) FROM "people" WHERE (((name ILIKE '%nobody%')))[0m
|
3011
|
+
[1m[35m (0.1ms)[0m ROLLBACK
|
3012
|
+
[1m[36m (0.2ms)[0m [1mBEGIN[0m
|
3013
|
+
[1m[35m (0.2ms)[0m ROLLBACK
|
3014
|
+
[1m[36m (0.1ms)[0m [1mBEGIN[0m
|
3015
|
+
[1m[35m (0.2ms)[0m ROLLBACK
|
3016
|
+
[1m[36m (0.1ms)[0m [1mBEGIN[0m
|
3017
|
+
[1m[35m (0.2ms)[0m ROLLBACK
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: magick_columns
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.3
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -69,12 +69,13 @@ files:
|
|
69
69
|
- lib/tasks/magick_columns_tasks.rake
|
70
70
|
- lib/magick_columns/railtie.rb
|
71
71
|
- lib/magick_columns/rules.rb
|
72
|
-
- lib/magick_columns/
|
73
|
-
- lib/magick_columns/locale/en.yml
|
72
|
+
- lib/magick_columns/i18n.rb
|
74
73
|
- lib/magick_columns/active_record.rb
|
75
74
|
- lib/magick_columns/defaults.rb
|
76
75
|
- lib/magick_columns/tokenizer.rb
|
77
76
|
- lib/magick_columns/version.rb
|
77
|
+
- lib/magick_columns/locales/es.yml
|
78
|
+
- lib/magick_columns/locales/en.yml
|
78
79
|
- lib/magick_columns.rb
|
79
80
|
- MIT-LICENSE
|
80
81
|
- Rakefile
|
@@ -135,7 +136,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
135
136
|
version: '0'
|
136
137
|
segments:
|
137
138
|
- 0
|
138
|
-
hash:
|
139
|
+
hash: -419900903376102177
|
139
140
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
140
141
|
none: false
|
141
142
|
requirements:
|
@@ -144,7 +145,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
144
145
|
version: '0'
|
145
146
|
segments:
|
146
147
|
- 0
|
147
|
-
hash:
|
148
|
+
hash: -419900903376102177
|
148
149
|
requirements: []
|
149
150
|
rubyforge_project:
|
150
151
|
rubygems_version: 1.8.19
|