genderize 0.1.0 → 0.1.1
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.
- checksums.yaml +4 -4
- data/README.md +14 -2
- data/lib/genderize.rb +27 -6
- data/lib/genderize/version.rb +1 -1
- data/spec/dummy/app/models/user_with_opt.rb +5 -0
- data/spec/dummy/db/migrate/20171122004630_create_user_with_opts.rb +9 -0
- data/spec/dummy/db/schema.rb +7 -1
- data/spec/dummy/db/test.sqlite3 +0 -0
- data/spec/dummy/spec/models/user_spec.rb +20 -0
- data/spec/dummy/spec/models/user_with_opt_spec.rb +65 -0
- metadata +29 -27
- data/spec/dummy/log/development.log +0 -24
- data/spec/dummy/log/test.log +0 -78
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 7c4935deed140cf4478eb3ab69b61960adec5d08
|
4
|
+
data.tar.gz: cc9f706716aa6acb17ad396fd15d5d2152d4adc4
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: b3b04de5a181215068018dbc54297ffbfcecc865c3ad58dcd415de29e5486613677d8b3c2833d8ddac9bfa56e5c5318c5309dc7faed9f2795e29e3056465343e
|
7
|
+
data.tar.gz: 51bd2f07b9d9ee30dd04f01bdde64e1978d87fce510f6746bc1c7f4fc810d5cf7937d091432836a2bf7ec59c84058a131ad2459d6fe94304fc6b708f8a76a4a3
|
data/README.md
CHANGED
@@ -2,7 +2,9 @@
|
|
2
2
|
|
3
3
|
Genderize is a simple Rails gem for adding gender helper methods to Rails models.
|
4
4
|
|
5
|
-
_New:_
|
5
|
+
_New:_
|
6
|
+
- (0.1.1) options to coerce invalid input to nil or to coerce empty string to nil
|
7
|
+
- (0.1.0) we now have non-binary as an option
|
6
8
|
|
7
9
|
## Example
|
8
10
|
|
@@ -147,7 +149,17 @@ Finally, to *genderize* a model attribute:
|
|
147
149
|
# ... or, if your db column isn't named `gender`
|
148
150
|
genderize(:user_gender)
|
149
151
|
|
150
|
-
|
152
|
+
### New opts (must specify column name to use)
|
153
|
+
# ... to prevent storing empty strings and store them as nil instead
|
154
|
+
genderize(:gender, no_empty_string: true)
|
155
|
+
|
156
|
+
# ... to coerce invalid arguments to nil rather than throwing ArgumentError
|
157
|
+
genderize(:gender, set_invalid_to_nil: true)
|
158
|
+
|
159
|
+
# ... these can be combined together
|
160
|
+
genderize(:gender, set_invalid_to_nil: true, no_empty_string: true)
|
161
|
+
|
162
|
+
end
|
151
163
|
|
152
164
|
|
153
165
|
## Issues
|
data/lib/genderize.rb
CHANGED
@@ -14,13 +14,25 @@ module Genderize
|
|
14
14
|
module ClassMethods
|
15
15
|
|
16
16
|
|
17
|
-
def genderize(col_name = "gender")
|
17
|
+
def genderize(col_name = "gender", opts = {})
|
18
18
|
# Reads the DB column value for gender attribute and creates a new Gender
|
19
19
|
# object with it's value
|
20
20
|
#
|
21
21
|
# The object is memoized for future calls.
|
22
22
|
#
|
23
|
+
# col_name - String or Symbol name of gender column (default 'gender')
|
24
|
+
#
|
25
|
+
# opts - Hash options to handle storage and initialization scenarios:
|
26
|
+
# :no_empty_string - Boolean. If true, stores empty string as nil
|
27
|
+
# :set_invalid_to_nil - Boolean. If true, sets the gender to be
|
28
|
+
# an unknown Gender instead of throwing an
|
29
|
+
# ArgumentError
|
30
|
+
#
|
23
31
|
# Returns a Gender
|
32
|
+
|
33
|
+
no_empty_string = !!opts[:no_empty_string] || false
|
34
|
+
set_invalid_to_nil = !!opts[:set_invalid_to_nil] || false
|
35
|
+
|
24
36
|
define_method col_name do
|
25
37
|
current_value = instance_variable_get("@#{col_name}")
|
26
38
|
persist_value = Genderize::Gender.new(read_attribute(col_name))
|
@@ -30,16 +42,25 @@ module Genderize
|
|
30
42
|
# Writes to the DB column the new value for the gender attribute
|
31
43
|
# Sets the instance varaible value too
|
32
44
|
#
|
33
|
-
# string - A String indicating the gender.
|
45
|
+
# string - A String indicating the gender. Valid parameters must have
|
46
|
+
# first letter be 'm', 'n', 'f' or ''. Case insensitive.
|
34
47
|
#
|
35
|
-
# Raises ArgumentError if gender
|
48
|
+
# Raises ArgumentError if gender isn't valid and set_invalid_to_nil is false
|
36
49
|
define_method "#{col_name}=" do |string|
|
37
50
|
string = string.to_s.first
|
38
|
-
|
39
|
-
|
51
|
+
valid = string.to_s =~ /\A(m|f|n|)\Z/i
|
52
|
+
|
53
|
+
unless valid
|
54
|
+
if set_invalid_to_nil
|
55
|
+
string = nil
|
56
|
+
else
|
57
|
+
raise ArgumentError, "Gender must be one of '', 'n', 'm', or 'f'"
|
58
|
+
end
|
40
59
|
end
|
41
|
-
write_attribute(col_name, string)
|
42
60
|
|
61
|
+
string = nil if (string == '' and no_empty_string)
|
62
|
+
|
63
|
+
write_attribute(col_name, string)
|
43
64
|
instance_variable_set("@#{col_name}", Genderize::Gender.new(read_attribute(col_name)))
|
44
65
|
end
|
45
66
|
|
data/lib/genderize/version.rb
CHANGED
data/spec/dummy/db/schema.rb
CHANGED
@@ -11,7 +11,13 @@
|
|
11
11
|
#
|
12
12
|
# It's strongly recommended that you check this file into your version control system.
|
13
13
|
|
14
|
-
ActiveRecord::Schema.define(version:
|
14
|
+
ActiveRecord::Schema.define(version: 20171122004630) do
|
15
|
+
|
16
|
+
create_table "user_with_opts", force: :cascade do |t|
|
17
|
+
t.string "gender"
|
18
|
+
t.datetime "created_at", null: false
|
19
|
+
t.datetime "updated_at", null: false
|
20
|
+
end
|
15
21
|
|
16
22
|
create_table "users", force: :cascade do |t|
|
17
23
|
t.string "name", limit: 20, null: false
|
data/spec/dummy/db/test.sqlite3
CHANGED
Binary file
|
@@ -52,6 +52,26 @@ describe User, type: :model do
|
|
52
52
|
it "should be blank?" do
|
53
53
|
expect(user.gender).to be_blank
|
54
54
|
end
|
55
|
+
|
56
|
+
it "should keep the stored value as empty string" do
|
57
|
+
expect(user[:gender]).to eql("")
|
58
|
+
end
|
59
|
+
end
|
60
|
+
|
61
|
+
context "when null" do
|
62
|
+
let(:gender) { nil }
|
63
|
+
|
64
|
+
it "should return a Gender object" do
|
65
|
+
expect(user.gender).to be_an_instance_of(Genderize::Gender)
|
66
|
+
end
|
67
|
+
|
68
|
+
it "should be blank?" do
|
69
|
+
expect(user.gender).to be_blank
|
70
|
+
end
|
71
|
+
|
72
|
+
it "should keep the stored value as empty string" do
|
73
|
+
expect(user[:gender]).to eql("")
|
74
|
+
end
|
55
75
|
end
|
56
76
|
|
57
77
|
context "when changed" do
|
@@ -0,0 +1,65 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
describe UserWithOpt, type: :model do
|
4
|
+
|
5
|
+
describe "gender" do
|
6
|
+
|
7
|
+
let(:user) { UserWithOpt.new(gender: gender) }
|
8
|
+
|
9
|
+
context "testing :no_empty_string" do
|
10
|
+
context "when blank" do
|
11
|
+
let(:gender) { "" }
|
12
|
+
|
13
|
+
it "should return a Gender object" do
|
14
|
+
expect(user.gender).to be_an_instance_of(Genderize::Gender)
|
15
|
+
end
|
16
|
+
|
17
|
+
it "should be blank?" do
|
18
|
+
expect(user.gender).to be_blank
|
19
|
+
end
|
20
|
+
|
21
|
+
it "should keep the stored value as nil" do
|
22
|
+
expect(user[:gender]).to be_nil
|
23
|
+
end
|
24
|
+
end
|
25
|
+
|
26
|
+
context "when nil" do
|
27
|
+
let(:gender) { nil }
|
28
|
+
|
29
|
+
it "should return a Gender object" do
|
30
|
+
expect(user.gender).to be_an_instance_of(Genderize::Gender)
|
31
|
+
end
|
32
|
+
|
33
|
+
it "should be blank?" do
|
34
|
+
expect(user.gender).to be_blank
|
35
|
+
end
|
36
|
+
|
37
|
+
it "should keep the stored value as nil" do
|
38
|
+
expect(user[:gender]).to be_nil
|
39
|
+
end
|
40
|
+
end
|
41
|
+
end
|
42
|
+
|
43
|
+
context "testing :set_invalid_to_nil" do
|
44
|
+
|
45
|
+
context "when something unexpected" do
|
46
|
+
let(:gender) { "something unexpected" }
|
47
|
+
|
48
|
+
it "should return a Gender object" do
|
49
|
+
expect(user.gender).to be_an_instance_of(Genderize::Gender)
|
50
|
+
end
|
51
|
+
|
52
|
+
it "should be blank?" do
|
53
|
+
expect(user.gender).to be_blank
|
54
|
+
end
|
55
|
+
|
56
|
+
it "should keep the stored value as nil" do
|
57
|
+
expect(user[:gender]).to be_nil
|
58
|
+
end
|
59
|
+
end
|
60
|
+
|
61
|
+
end
|
62
|
+
|
63
|
+
end
|
64
|
+
|
65
|
+
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: genderize
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Bodacious
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2017-
|
11
|
+
date: 2017-11-22 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rails
|
@@ -92,6 +92,7 @@ files:
|
|
92
92
|
- spec/dummy/Rakefile
|
93
93
|
- spec/dummy/app/helpers/users_helper.rb
|
94
94
|
- spec/dummy/app/models/user.rb
|
95
|
+
- spec/dummy/app/models/user_with_opt.rb
|
95
96
|
- spec/dummy/app/views/users/_form.html.erb
|
96
97
|
- spec/dummy/app/views/users/edit.html.erb
|
97
98
|
- spec/dummy/app/views/users/index.html.erb
|
@@ -115,12 +116,12 @@ files:
|
|
115
116
|
- spec/dummy/config/routes.rb
|
116
117
|
- spec/dummy/db/development.sqlite3
|
117
118
|
- spec/dummy/db/migrate/20130506080641_create_users.rb
|
119
|
+
- spec/dummy/db/migrate/20171122004630_create_user_with_opts.rb
|
118
120
|
- spec/dummy/db/schema.rb
|
119
121
|
- spec/dummy/db/test.sqlite3
|
120
|
-
- spec/dummy/log/development.log
|
121
|
-
- spec/dummy/log/test.log
|
122
122
|
- spec/dummy/script/rails
|
123
123
|
- spec/dummy/spec/models/user_spec.rb
|
124
|
+
- spec/dummy/spec/models/user_with_opt_spec.rb
|
124
125
|
- spec/genderize_spec.rb
|
125
126
|
- spec/lib/gender_spec.rb
|
126
127
|
- spec/spec_helper.rb
|
@@ -150,40 +151,41 @@ signing_key:
|
|
150
151
|
specification_version: 4
|
151
152
|
summary: A helpful class for gender-specific models in Ruby applications
|
152
153
|
test_files:
|
153
|
-
- spec/
|
154
|
+
- spec/spec_helper.rb
|
155
|
+
- spec/genderize_spec.rb
|
156
|
+
- spec/dummy/app/models/user_with_opt.rb
|
154
157
|
- spec/dummy/app/models/user.rb
|
155
|
-
- spec/dummy/app/views/users/_form.html.erb
|
156
|
-
- spec/dummy/app/views/users/edit.html.erb
|
157
158
|
- spec/dummy/app/views/users/index.html.erb
|
158
|
-
- spec/dummy/app/views/users/
|
159
|
+
- spec/dummy/app/views/users/edit.html.erb
|
159
160
|
- spec/dummy/app/views/users/show.html.erb
|
160
|
-
- spec/dummy/
|
161
|
-
- spec/dummy/
|
162
|
-
- spec/dummy/
|
163
|
-
- spec/dummy/config/
|
164
|
-
- spec/dummy/config/
|
161
|
+
- spec/dummy/app/views/users/_form.html.erb
|
162
|
+
- spec/dummy/app/views/users/new.html.erb
|
163
|
+
- spec/dummy/app/helpers/users_helper.rb
|
164
|
+
- spec/dummy/config/routes.rb
|
165
|
+
- spec/dummy/config/locales/en.yml
|
165
166
|
- spec/dummy/config/environments/production.rb
|
167
|
+
- spec/dummy/config/environments/development.rb
|
166
168
|
- spec/dummy/config/environments/test.rb
|
169
|
+
- spec/dummy/config/environment.rb
|
170
|
+
- spec/dummy/config/application.rb
|
171
|
+
- spec/dummy/config/database.yml
|
172
|
+
- spec/dummy/config/boot.rb
|
167
173
|
- spec/dummy/config/initializers/backtrace_silencers.rb
|
168
|
-
- spec/dummy/config/initializers/inflections.rb
|
169
174
|
- spec/dummy/config/initializers/mime_types.rb
|
170
|
-
- spec/dummy/config/initializers/secret_token.rb
|
171
175
|
- spec/dummy/config/initializers/session_store.rb
|
172
176
|
- spec/dummy/config/initializers/wrap_parameters.rb
|
173
|
-
- spec/dummy/config/
|
174
|
-
- spec/dummy/config/
|
177
|
+
- spec/dummy/config/initializers/secret_token.rb
|
178
|
+
- spec/dummy/config/initializers/inflections.rb
|
175
179
|
- spec/dummy/config.ru
|
176
|
-
- spec/dummy/
|
177
|
-
- spec/dummy/
|
180
|
+
- spec/dummy/spec/models/user_with_opt_spec.rb
|
181
|
+
- spec/dummy/spec/models/user_spec.rb
|
182
|
+
- spec/dummy/script/rails
|
183
|
+
- spec/dummy/Rakefile
|
178
184
|
- spec/dummy/db/schema.rb
|
179
185
|
- spec/dummy/db/test.sqlite3
|
180
|
-
- spec/dummy/
|
181
|
-
- spec/dummy/
|
182
|
-
- spec/dummy/
|
186
|
+
- spec/dummy/db/migrate/20171122004630_create_user_with_opts.rb
|
187
|
+
- spec/dummy/db/migrate/20130506080641_create_users.rb
|
188
|
+
- spec/dummy/db/development.sqlite3
|
183
189
|
- spec/dummy/README.rdoc
|
184
|
-
- spec/dummy/script/rails
|
185
|
-
- spec/dummy/spec/models/user_spec.rb
|
186
|
-
- spec/genderize_spec.rb
|
187
|
-
- spec/lib/gender_spec.rb
|
188
|
-
- spec/spec_helper.rb
|
189
190
|
- spec/support/deferred_garbage_collection.rb
|
191
|
+
- spec/lib/gender_spec.rb
|
@@ -1,24 +0,0 @@
|
|
1
|
-
DEPRECATION WARNING: config.active_record.whitelist_attributes is deprecated and have no effect. Remove its call from the configuration. (called from block in tsort_each at /Users/Gavin/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/tsort.rb:228)
|
2
|
-
[1m[36m (2.5ms)[0m [1mCREATE TABLE "schema_migrations" ("version" varchar NOT NULL) [0m
|
3
|
-
[1m[35m (0.3ms)[0m select sqlite_version(*)
|
4
|
-
[1m[36m (0.6ms)[0m [1mCREATE UNIQUE INDEX "unique_schema_migrations" ON "schema_migrations" ("version")[0m
|
5
|
-
[1m[35mActiveRecord::SchemaMigration Load (0.1ms)[0m SELECT "schema_migrations".* FROM "schema_migrations"
|
6
|
-
Migrating to CreateUsers (20130506080641)
|
7
|
-
[1m[36m (0.1ms)[0m [1mbegin transaction[0m
|
8
|
-
DEPRECATION WARNING: `#timestamps` was called without specifying an option for `null`. In Rails 5, this behavior will change to `null: false`. You should manually specify `null: true` to prevent the behavior of your existing migrations from changing. (called from block in change at /Users/Gavin/Clients/KatanaCode/genderize/spec/dummy/db/migrate/20130506080641_create_users.rb:8)
|
9
|
-
[1m[35m (0.5ms)[0m CREATE TABLE "users" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "name" varchar(20) NOT NULL, "gender" varchar(1) NOT NULL, "created_at" datetime, "updated_at" datetime)
|
10
|
-
[1m[36mSQL (0.2ms)[0m [1mINSERT INTO "schema_migrations" ("version") VALUES (?)[0m [["version", "20130506080641"]]
|
11
|
-
[1m[35m (0.7ms)[0m commit transaction
|
12
|
-
[1m[36mActiveRecord::SchemaMigration Load (0.1ms)[0m [1mSELECT "schema_migrations".* FROM "schema_migrations"[0m
|
13
|
-
DEPRECATION WARNING: config.active_record.whitelist_attributes is deprecated and have no effect. Remove its call from the configuration. (called from block in tsort_each at /Users/Gavin/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/tsort.rb:228)
|
14
|
-
[1m[36m (2.9ms)[0m [1mCREATE TABLE "schema_migrations" ("version" varchar NOT NULL) [0m
|
15
|
-
[1m[35m (0.1ms)[0m select sqlite_version(*)
|
16
|
-
[1m[36m (0.8ms)[0m [1mCREATE UNIQUE INDEX "unique_schema_migrations" ON "schema_migrations" ("version")[0m
|
17
|
-
[1m[35mActiveRecord::SchemaMigration Load (0.1ms)[0m SELECT "schema_migrations".* FROM "schema_migrations"
|
18
|
-
Migrating to CreateUsers (20130506080641)
|
19
|
-
[1m[36m (0.1ms)[0m [1mbegin transaction[0m
|
20
|
-
DEPRECATION WARNING: `#timestamps` was called without specifying an option for `null`. In Rails 5, this behavior will change to `null: false`. You should manually specify `null: true` to prevent the behavior of your existing migrations from changing. (called from block in change at /Users/Gavin/Clients/KatanaCode/genderize/spec/dummy/db/migrate/20130506080641_create_users.rb:8)
|
21
|
-
[1m[35m (0.3ms)[0m CREATE TABLE "users" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "name" varchar(20) NOT NULL, "gender" varchar(1) NOT NULL, "created_at" datetime, "updated_at" datetime)
|
22
|
-
[1m[36mSQL (0.1ms)[0m [1mINSERT INTO "schema_migrations" ("version") VALUES (?)[0m [["version", "20130506080641"]]
|
23
|
-
[1m[35m (0.7ms)[0m commit transaction
|
24
|
-
[1m[36mActiveRecord::SchemaMigration Load (0.0ms)[0m [1mSELECT "schema_migrations".* FROM "schema_migrations"[0m
|
data/spec/dummy/log/test.log
DELETED
@@ -1,78 +0,0 @@
|
|
1
|
-
[1m[36m (2.6ms)[0m [1mCREATE TABLE "schema_migrations" ("version" varchar NOT NULL) [0m
|
2
|
-
[1m[35m (0.0ms)[0m select sqlite_version(*)
|
3
|
-
[1m[36m (0.7ms)[0m [1mCREATE UNIQUE INDEX "unique_schema_migrations" ON "schema_migrations" ("version")[0m
|
4
|
-
[1m[35mActiveRecord::SchemaMigration Load (0.1ms)[0m SELECT "schema_migrations".* FROM "schema_migrations"
|
5
|
-
Migrating to CreateUsers (20130506080641)
|
6
|
-
[1m[36m (0.0ms)[0m [1mbegin transaction[0m
|
7
|
-
[1m[35m (0.3ms)[0m CREATE TABLE "users" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "name" varchar(20) NOT NULL, "gender" varchar(1) NOT NULL, "created_at" datetime, "updated_at" datetime)
|
8
|
-
[1m[36mSQL (0.1ms)[0m [1mINSERT INTO "schema_migrations" ("version") VALUES (?)[0m [["version", "20130506080641"]]
|
9
|
-
[1m[35m (0.5ms)[0m commit transaction
|
10
|
-
[1m[36mActiveRecord::SchemaMigration Load (0.1ms)[0m [1mSELECT "schema_migrations".* FROM "schema_migrations"[0m
|
11
|
-
[1m[36m (0.0ms)[0m [1mbegin transaction[0m
|
12
|
-
[1m[35mSQL (0.3ms)[0m INSERT INTO "users" ("name", "gender", "created_at", "updated_at") VALUES (?, ?, ?, ?) [["name", "f"], ["gender", "f"], ["created_at", "2016-05-27 13:22:21.503307"], ["updated_at", "2016-05-27 13:22:21.503307"]]
|
13
|
-
[1m[36m (2.7ms)[0m [1mcommit transaction[0m
|
14
|
-
[1m[35mUser Load (0.1ms)[0m SELECT "users".* FROM "users" ORDER BY "users"."id" DESC LIMIT 1
|
15
|
-
[1m[36m (0.0ms)[0m [1mbegin transaction[0m
|
16
|
-
[1m[35mSQL (0.4ms)[0m INSERT INTO "users" ("name", "gender", "created_at", "updated_at") VALUES (?, ?, ?, ?) [["name", "f"], ["gender", "f"], ["created_at", "2016-05-27 13:22:53.702225"], ["updated_at", "2016-05-27 13:22:53.702225"]]
|
17
|
-
[1m[36m (2.5ms)[0m [1mcommit transaction[0m
|
18
|
-
[1m[35mUser Load (0.1ms)[0m SELECT "users".* FROM "users" ORDER BY "users"."id" DESC LIMIT 1
|
19
|
-
[1m[36m (0.1ms)[0m [1mbegin transaction[0m
|
20
|
-
[1m[35mSQL (0.3ms)[0m INSERT INTO "users" ("name", "gender", "created_at", "updated_at") VALUES (?, ?, ?, ?) [["name", "f"], ["gender", "f"], ["created_at", "2016-05-27 13:28:16.419497"], ["updated_at", "2016-05-27 13:28:16.419497"]]
|
21
|
-
[1m[36m (2.4ms)[0m [1mcommit transaction[0m
|
22
|
-
[1m[35mUser Load (0.1ms)[0m SELECT "users".* FROM "users" ORDER BY "users"."id" DESC LIMIT 1
|
23
|
-
[1m[36m (0.0ms)[0m [1mbegin transaction[0m
|
24
|
-
[1m[35mSQL (0.3ms)[0m INSERT INTO "users" ("name", "gender", "created_at", "updated_at") VALUES (?, ?, ?, ?) [["name", "f"], ["gender", "f"], ["created_at", "2016-05-27 13:29:04.891644"], ["updated_at", "2016-05-27 13:29:04.891644"]]
|
25
|
-
[1m[36m (2.5ms)[0m [1mcommit transaction[0m
|
26
|
-
[1m[35mUser Load (0.2ms)[0m SELECT "users".* FROM "users" ORDER BY "users"."id" DESC LIMIT 1
|
27
|
-
[1m[36m (0.0ms)[0m [1mbegin transaction[0m
|
28
|
-
[1m[35mSQL (0.3ms)[0m INSERT INTO "users" ("name", "gender", "created_at", "updated_at") VALUES (?, ?, ?, ?) [["name", "f"], ["gender", "f"], ["created_at", "2016-05-27 13:29:41.054526"], ["updated_at", "2016-05-27 13:29:41.054526"]]
|
29
|
-
[1m[36m (2.7ms)[0m [1mcommit transaction[0m
|
30
|
-
[1m[35mUser Load (0.1ms)[0m SELECT "users".* FROM "users" ORDER BY "users"."id" DESC LIMIT 1
|
31
|
-
[1m[36m (0.0ms)[0m [1mbegin transaction[0m
|
32
|
-
[1m[35mSQL (0.3ms)[0m INSERT INTO "users" ("name", "gender", "created_at", "updated_at") VALUES (?, ?, ?, ?) [["name", "f"], ["gender", "f"], ["created_at", "2016-05-27 13:30:10.725246"], ["updated_at", "2016-05-27 13:30:10.725246"]]
|
33
|
-
[1m[36m (2.6ms)[0m [1mcommit transaction[0m
|
34
|
-
[1m[35mUser Load (0.2ms)[0m SELECT "users".* FROM "users" ORDER BY "users"."id" DESC LIMIT 1
|
35
|
-
[1m[36m (0.0ms)[0m [1mbegin transaction[0m
|
36
|
-
[1m[35mSQL (0.3ms)[0m INSERT INTO "users" ("name", "gender", "created_at", "updated_at") VALUES (?, ?, ?, ?) [["name", "f"], ["gender", "f"], ["created_at", "2016-05-27 13:31:19.111752"], ["updated_at", "2016-05-27 13:31:19.111752"]]
|
37
|
-
[1m[36m (2.4ms)[0m [1mcommit transaction[0m
|
38
|
-
[1m[35mUser Load (0.1ms)[0m SELECT "users".* FROM "users" ORDER BY "users"."id" DESC LIMIT 1
|
39
|
-
[1m[36m (0.0ms)[0m [1mbegin transaction[0m
|
40
|
-
[1m[35mSQL (0.3ms)[0m INSERT INTO "users" ("name", "gender", "created_at", "updated_at") VALUES (?, ?, ?, ?) [["name", "f"], ["gender", "f"], ["created_at", "2016-05-27 13:31:42.590594"], ["updated_at", "2016-05-27 13:31:42.590594"]]
|
41
|
-
[1m[36m (2.6ms)[0m [1mcommit transaction[0m
|
42
|
-
[1m[35mUser Load (0.1ms)[0m SELECT "users".* FROM "users" ORDER BY "users"."id" DESC LIMIT 1
|
43
|
-
[1m[36m (0.0ms)[0m [1mbegin transaction[0m
|
44
|
-
[1m[35mSQL (0.3ms)[0m INSERT INTO "users" ("name", "gender", "created_at", "updated_at") VALUES (?, ?, ?, ?) [["name", "f"], ["gender", "f"], ["created_at", "2016-05-27 13:31:58.855684"], ["updated_at", "2016-05-27 13:31:58.855684"]]
|
45
|
-
[1m[36m (2.2ms)[0m [1mcommit transaction[0m
|
46
|
-
[1m[35mUser Load (0.1ms)[0m SELECT "users".* FROM "users" ORDER BY "users"."id" DESC LIMIT 1
|
47
|
-
[1m[36m (0.0ms)[0m [1mbegin transaction[0m
|
48
|
-
[1m[35mSQL (0.3ms)[0m INSERT INTO "users" ("name", "gender", "created_at", "updated_at") VALUES (?, ?, ?, ?) [["name", "f"], ["gender", "f"], ["created_at", "2016-05-27 13:32:11.842003"], ["updated_at", "2016-05-27 13:32:11.842003"]]
|
49
|
-
[1m[36m (2.4ms)[0m [1mcommit transaction[0m
|
50
|
-
[1m[35mUser Load (0.1ms)[0m SELECT "users".* FROM "users" ORDER BY "users"."id" DESC LIMIT 1
|
51
|
-
[1m[36m (0.0ms)[0m [1mbegin transaction[0m
|
52
|
-
[1m[35mSQL (0.3ms)[0m INSERT INTO "users" ("name", "gender", "created_at", "updated_at") VALUES (?, ?, ?, ?) [["name", "f"], ["gender", "f"], ["created_at", "2016-05-27 13:32:49.476375"], ["updated_at", "2016-05-27 13:32:49.476375"]]
|
53
|
-
[1m[36m (2.6ms)[0m [1mcommit transaction[0m
|
54
|
-
[1m[35mUser Load (0.1ms)[0m SELECT "users".* FROM "users" ORDER BY "users"."id" DESC LIMIT 1
|
55
|
-
[1m[36m (0.0ms)[0m [1mbegin transaction[0m
|
56
|
-
[1m[35mSQL (0.3ms)[0m INSERT INTO "users" ("name", "gender", "created_at", "updated_at") VALUES (?, ?, ?, ?) [["name", "f"], ["gender", "f"], ["created_at", "2016-05-27 13:33:00.356946"], ["updated_at", "2016-05-27 13:33:00.356946"]]
|
57
|
-
[1m[36m (2.5ms)[0m [1mcommit transaction[0m
|
58
|
-
[1m[35mUser Load (0.1ms)[0m SELECT "users".* FROM "users" ORDER BY "users"."id" DESC LIMIT 1
|
59
|
-
[1m[36m (0.1ms)[0m [1mbegin transaction[0m
|
60
|
-
[1m[35mSQL (0.4ms)[0m INSERT INTO "users" ("name", "gender", "created_at", "updated_at") VALUES (?, ?, ?, ?) [["name", "f"], ["gender", "f"], ["created_at", "2016-05-27 13:56:15.467527"], ["updated_at", "2016-05-27 13:56:15.467527"]]
|
61
|
-
[1m[36m (0.5ms)[0m [1mcommit transaction[0m
|
62
|
-
[1m[35mUser Load (0.1ms)[0m SELECT "users".* FROM "users" ORDER BY "users"."id" DESC LIMIT 1
|
63
|
-
[1m[36m (0.0ms)[0m [1mbegin transaction[0m
|
64
|
-
[1m[35mSQL (0.3ms)[0m INSERT INTO "users" ("name", "gender", "created_at", "updated_at") VALUES (?, ?, ?, ?) [["name", "f"], ["gender", "f"], ["created_at", "2016-05-27 13:57:19.171265"], ["updated_at", "2016-05-27 13:57:19.171265"]]
|
65
|
-
[1m[36m (2.4ms)[0m [1mcommit transaction[0m
|
66
|
-
[1m[35mUser Load (0.1ms)[0m SELECT "users".* FROM "users" ORDER BY "users"."id" DESC LIMIT 1
|
67
|
-
[1m[36m (0.0ms)[0m [1mbegin transaction[0m
|
68
|
-
[1m[35mSQL (0.4ms)[0m INSERT INTO "users" ("name", "gender", "created_at", "updated_at") VALUES (?, ?, ?, ?) [["name", "f"], ["gender", "f"], ["created_at", "2016-05-27 13:57:59.175258"], ["updated_at", "2016-05-27 13:57:59.175258"]]
|
69
|
-
[1m[36m (2.3ms)[0m [1mcommit transaction[0m
|
70
|
-
[1m[35mUser Load (0.1ms)[0m SELECT "users".* FROM "users" ORDER BY "users"."id" DESC LIMIT 1
|
71
|
-
[1m[36m (0.0ms)[0m [1mbegin transaction[0m
|
72
|
-
[1m[35mSQL (0.4ms)[0m INSERT INTO "users" ("name", "gender", "created_at", "updated_at") VALUES (?, ?, ?, ?) [["name", "f"], ["gender", "f"], ["created_at", "2016-05-27 13:58:25.137246"], ["updated_at", "2016-05-27 13:58:25.137246"]]
|
73
|
-
[1m[36m (2.4ms)[0m [1mcommit transaction[0m
|
74
|
-
[1m[35mUser Load (0.1ms)[0m SELECT "users".* FROM "users" ORDER BY "users"."id" DESC LIMIT 1
|
75
|
-
[1m[36m (0.1ms)[0m [1mbegin transaction[0m
|
76
|
-
[1m[35mSQL (0.4ms)[0m INSERT INTO "users" ("name", "gender", "created_at", "updated_at") VALUES (?, ?, ?, ?) [["name", "f"], ["gender", "f"], ["created_at", "2016-05-27 13:58:39.130168"], ["updated_at", "2016-05-27 13:58:39.130168"]]
|
77
|
-
[1m[36m (2.4ms)[0m [1mcommit transaction[0m
|
78
|
-
[1m[35mUser Load (0.1ms)[0m SELECT "users".* FROM "users" ORDER BY "users"."id" DESC LIMIT 1
|