better_record 0.8.1 → 0.8.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/better_record.rb +6 -1
- data/lib/better_record/concerns/active_record_extensions/attribute_methods/write.rb +1 -1
- data/lib/better_record/version.rb +1 -1
- data/{config/initializers → lib}/core_ext/boolean.rb +6 -0
- data/lib/generators/better_record/setup/templates/initializer.rb +5 -0
- metadata +3 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 20b9f20b5d31a8e1182dd09ca27d6c09551eafa48bb1a0a722681a9194ccf85a
|
4
|
+
data.tar.gz: 8b4604c103762493e13a49b13c142b31e4da585a0b4d2932025e23a1b162d3c1
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: '08ac2e82687f68237f666a8f5c4e4768dbc043cfce5ce60960ee7710827334664128e37e88d30abe4b1202aed9fb9b6f78478fe33621f37897550cc70e56ec54'
|
7
|
+
data.tar.gz: ca3e3094b2133e4750d3dc9bb08d12b357ae42e894dada66c3631d857d0a9625c0ee4cf0922da71f66212e1cff12e421e2fb6c9ce369abae9c2d0cd364b74461
|
data/lib/better_record.rb
CHANGED
@@ -1,5 +1,8 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
1
3
|
require 'active_support'
|
2
4
|
require 'active_record'
|
5
|
+
require 'active_record/type'
|
3
6
|
require 'csv'
|
4
7
|
|
5
8
|
Dir.glob("#{File.expand_path(__dir__)}/core_ext/*.rb").each do |d|
|
@@ -8,6 +11,7 @@ end
|
|
8
11
|
|
9
12
|
module BetterRecord
|
10
13
|
ATTRIBUTE_METHODS = [
|
14
|
+
:strict_booleans,
|
11
15
|
:default_polymorphic_method,
|
12
16
|
:db_audit_schema,
|
13
17
|
:has_auditing_relation_by_default,
|
@@ -37,9 +41,10 @@ module BetterRecord
|
|
37
41
|
end
|
38
42
|
end
|
39
43
|
|
44
|
+
self.strict_booleans = Boolean.strict_parse((ENV.fetch('BR_STRICT_BOOLEANS') { false }))
|
40
45
|
self.default_polymorphic_method = (ENV.fetch('BR_DEFAULT_POLYMORPHIC_METHOD') { :polymorphic_name }).to_sym
|
41
46
|
self.db_audit_schema = ENV.fetch('BR_DB_AUDIT_SCHEMA') { 'auditing' }
|
42
|
-
self.has_auditing_relation_by_default =
|
47
|
+
self.has_auditing_relation_by_default = Boolean.strict_parse(ENV.fetch('BR_ADD_HAS_MANY') { true })
|
43
48
|
self.audit_relation_name = (ENV.fetch('BR_AUDIT_RELATION_NAME') { 'logged_actions' }).to_sym
|
44
49
|
self.layout_template = (ENV.fetch('BR_LAYOUT_TEMPLATE') { 'better_record/layout' }).to_s
|
45
50
|
self.app_domain_name = (ENV.fetch('APP_DOMAIN_NAME') { 'non_existant_domain.com' }).to_s
|
@@ -20,7 +20,7 @@ module BetterRecord
|
|
20
20
|
when ActiveRecord::ConnectionAdapters::PostgreSQL::OID::Jsonb
|
21
21
|
value.presence || {}
|
22
22
|
when ActiveRecord::Type::Boolean
|
23
|
-
Boolean.parse(value)
|
23
|
+
BetterRecord.strict_booleans ? Boolean.strict_parse(value) : Boolean.parse(value)
|
24
24
|
else
|
25
25
|
value.presence
|
26
26
|
end
|
@@ -4,6 +4,7 @@ module BetterRecord
|
|
4
4
|
##########################################################################
|
5
5
|
# THE FOLLOWING SETTINGS CAN ALSO BE SET THROUGH ENVIRONMENT VARIABLES #
|
6
6
|
# #
|
7
|
+
# strict_booleans: BR_STRICT_BOOLEANS #
|
7
8
|
# default_polymorphic_method: BR_DEFAULT_POLYMORPHIC_METHOD #
|
8
9
|
# db_audit_schema: BR_DB_AUDIT_SCHEMA #
|
9
10
|
# has_auditing_relation_by_default: BR_ADD_HAS_MANY #
|
@@ -17,6 +18,10 @@ module BetterRecord
|
|
17
18
|
# certificate_session_user_method: BR_CERTIFICATE_SESSION_USER_METHOD #
|
18
19
|
##########################################################################
|
19
20
|
|
21
|
+
# uncomment the following line to disable three-state booleans in models
|
22
|
+
|
23
|
+
# self.strict_booleans = true
|
24
|
+
|
20
25
|
# uncomment the following line to use table_names instead of model names
|
21
26
|
# as the 'type' value in polymorphic relationships
|
22
27
|
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: better_record
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.8.
|
4
|
+
version: 0.8.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Sampson Crowley
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2018-08-
|
11
|
+
date: 2018-08-23 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rails
|
@@ -245,7 +245,6 @@ files:
|
|
245
245
|
- app/views/layouts/better_record/application.html.erb
|
246
246
|
- config/initializers/active_record/money_type.rb
|
247
247
|
- config/initializers/concerns.rb
|
248
|
-
- config/initializers/core_ext/boolean.rb
|
249
248
|
- config/initializers/core_ext/date.rb
|
250
249
|
- config/initializers/core_ext/integer.rb
|
251
250
|
- config/initializers/core_ext/string.rb
|
@@ -288,6 +287,7 @@ files:
|
|
288
287
|
- lib/better_record/tasks/better_record/install.rake
|
289
288
|
- lib/better_record/tasks/spec/attributes.rake
|
290
289
|
- lib/better_record/version.rb
|
290
|
+
- lib/core_ext/boolean.rb
|
291
291
|
- lib/generators/better_record/eject_rspec_extensions/USAGE
|
292
292
|
- lib/generators/better_record/eject_rspec_extensions/eject_rspec_extensions_generator.rb
|
293
293
|
- lib/generators/better_record/setup/USAGE
|