@@ -17,69 +17,99 @@ Simple yet customizable token generator for Rails 3.
17
17
18
18
* Single token
19
19
20
- has_token_on :slug, :length => 3
20
+ ``` ruby
21
+ has_token_on :slug , :length => 3
22
+ ```
21
23
22
24
* Multiple tokens, same configuration
23
25
24
- has_token_on [:slug, :permalink], :length => 3
26
+ ` ` ` ruby
27
+ has_token_on [:slug, :permalink], :length => 3
28
+ ` ` `
25
29
26
30
* Multiple tokens with individual configuration
27
31
28
- has_token_on :slug, :length => 3
29
- has_token_on :permalink, :length => 5
32
+ ` ` ` ruby
33
+ has_token_on :slug, :length => 3
34
+ has_token_on :permalink, :length => 5
35
+ ` ` `
30
36
31
37
* .. or using single hash
32
38
33
- has_token_on :slug => { :length => 3 }, :permalink => { :length => 5 }
39
+ ` ` ` ruby
40
+ has_token_on :slug => { :length => 3 }, :permalink => { :length => 5 }
41
+ ` ` `
34
42
35
43
# # Options
36
44
37
45
Options are as follows:
38
46
39
47
* :length - token length. Default - 16 .
40
48
41
- has_token_on :slug, length => 3
49
+ ` ` ` ruby
50
+ has_token_on :slug, length => 3
51
+ ` ` `
42
52
43
53
* :prepend - prepend something to the beginning of the token. Default - none.
44
54
45
- has_token_on :slug, :prepend => "private"
55
+ ` ` ` ruby
56
+ has_token_on :slug, :prepend => "private"
57
+ ` ` `
46
58
47
59
* :append - append something to the back of the token. Default - none.
48
60
49
- has_token_on :slug, :append => "ending"
61
+ ` ` ` ruby
62
+ has_token_on :slug, :append => "ending"
63
+ ` ` `
50
64
51
65
* :unique - ensure that tokens is unique (checking is performed in the app logic). Default - false .
52
66
53
- has_token_on :slug, :unique => true
67
+ ` ` ` ruby
68
+ has_token_on :slug, :unique => true
69
+ ` ` `
54
70
55
71
* :if - generate token only if provided condition is met. Default - none.
56
72
57
- has_token_on :slug, :if => lambda { |record| record.private? }
73
+ ` ` ` ruby
74
+ has_token_on :slug, :if => lambda { |record| record.private? }
75
+ ` ` `
58
76
59
77
* :on - generates token on certain time: :initialize , :create (default), :update .
60
78
61
- has_token_on :slug, :on => :initialize
79
+ ` ` ` ruby
80
+ has_token_on :slug, :on => :initialize
81
+ ` ` `
62
82
63
83
* :seed - elements or functions that are used to generate hash. Options:
64
84
* :securerandom - uses ActiveSupport ::SecureRandom .hex (default)
65
85
66
- has_token_on :slug, :seed => :securerandom
86
+ ` ` ` ruby
87
+ has_token_on :slug, :seed => :securerandom
88
+ ` ` `
67
89
68
90
* :guid - uses simple_uuid gem. You should add it to your Gemfile . 36 characters long GUID . Length param is ignored.
69
91
70
- has_token_on :slug, :seed => :guid
92
+ ` ` ` ruby
93
+ has_token_on :slug, :seed => :guid
94
+ ` ` `
71
95
72
96
* (' a' ..' z' ) - a Range . Mixes the range elements up to specified length.
73
97
74
- has_token_on :slug, :seed => ('a'..'z')
98
+ ` ` ` ruby
99
+ has_token_on :slug, :seed => ('a'..'z')
100
+ ` ` `
75
101
76
102
* [' a' , ' b' , ' c' ] - an Array . Mixes the array elements up to specified length.
77
103
78
- has_token_on :slug, :seed => ['a', 'b', 'c']
104
+ ` ` ` ruby
105
+ has_token_on :slug, :seed => ['a', 'b', 'c']
106
+ ` ` `
79
107
80
108
* lambda { 2 * 2 } - a Proc . Executes proc . Length param is ignored.
81
109
82
- has_token_on :slug, :seed => lambda { 2 * 2 }
110
+ ` ` ` ruby
111
+ has_token_on :slug, :seed => lambda { 2 * 2 }
112
+ ` ` `
83
113
84
114
# # Generator
85
115
0 commit comments