audited-serialize 1.0.3 → 1.0.5
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 +5 -0
- data/lib/audited/audit_extensions.rb +10 -0
- data/lib/audited/rake_tasks.rb +33 -0
- data/lib/audited/serialization.rb +7 -2
- data/lib/audited_serialize.rb +1 -0
- data/lib/generators/audited/templates/locale.rb.tt +1 -1
- data/lib/generators/audited/translations_generator.rb +0 -12
- metadata +3 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 8487382f0275276e7aede757a8188cc26a01bbb927bde494f42834985046bd3f
|
4
|
+
data.tar.gz: 0ef1301e5ca9116ecb3f2fa4fddb80a2be8039648baec85e727582d10e06989e
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: c1a1d850fdd70988f50e68d288b3402104de067d48440b83ebb6a9b940cb300824230ae23207ad92e76b46eded6be26ac1cbc56b50a08977b6f3fc0318cb589c
|
7
|
+
data.tar.gz: 839cb0850677a2dbe20e8ed57fa79f7352aa0cd22062c314122c9517cdc619598237f6df681aec4e812b75300b973e887aaa6beca4d10c519b3dbf90c9825150
|
data/README.md
CHANGED
@@ -51,6 +51,11 @@ audit.title
|
|
51
51
|
rails g audited:translations
|
52
52
|
```
|
53
53
|
|
54
|
+
Для поиска моделей с недостающими переводами выполните:
|
55
|
+
```bash
|
56
|
+
rake audited:find_missing_translations
|
57
|
+
```
|
58
|
+
|
54
59
|
## Заголовки связанных записей
|
55
60
|
|
56
61
|
При наличии в аудит-логах полей, содержащих ID связанных сущностей, по умолчанию будет отображено название (поле `name`) этой сущности. При отсутствии у сущности поля `name` или необходимости отображения значения другого поля можно задать название этого поля в модели
|
@@ -37,6 +37,16 @@ module Audited
|
|
37
37
|
"#{operation} #{entity}"
|
38
38
|
end
|
39
39
|
|
40
|
+
def self.models_list
|
41
|
+
Rails.application.eager_load!
|
42
|
+
|
43
|
+
ActiveRecord::Base.descendants.map do |model|
|
44
|
+
if model.respond_to?(:auditing_enabled)
|
45
|
+
model.to_s
|
46
|
+
end
|
47
|
+
end.compact.sort
|
48
|
+
end
|
49
|
+
|
40
50
|
end
|
41
51
|
|
42
52
|
@ignored_attributes = %w[
|
@@ -0,0 +1,33 @@
|
|
1
|
+
require 'rake'
|
2
|
+
|
3
|
+
namespace :audited do
|
4
|
+
|
5
|
+
desc 'Поиск недостающих переводов названий сущностей'
|
6
|
+
task find_missing_translations: :environment do
|
7
|
+
missing = []
|
8
|
+
|
9
|
+
# модели, на которых включены аудит-логи
|
10
|
+
audited_models = Audited::Audit.models_list
|
11
|
+
|
12
|
+
# содержимое файла с переводами
|
13
|
+
content = YAML.load_file('config/locales/audited_serialize.ru.yml')
|
14
|
+
types_in_file = content['ru']['audited_serialize']['auditable_types']
|
15
|
+
|
16
|
+
# модели с пустыми переводами
|
17
|
+
missing += types_in_file.map { |model, translation| model if translation.blank? }.compact
|
18
|
+
|
19
|
+
# недостающие модели
|
20
|
+
missing += audited_models - types_in_file.keys
|
21
|
+
|
22
|
+
if missing.empty?
|
23
|
+
abort('Все модели переведены')
|
24
|
+
else
|
25
|
+
$stdout.puts 'Недостающие переводы моделей:'
|
26
|
+
end
|
27
|
+
|
28
|
+
missing.sort.each do |model|
|
29
|
+
$stdout.puts %(#{model}: "")
|
30
|
+
end
|
31
|
+
end
|
32
|
+
|
33
|
+
end
|
@@ -5,7 +5,7 @@ module Audited
|
|
5
5
|
|
6
6
|
def changes_list
|
7
7
|
# проверка на наличие модели
|
8
|
-
# в случае ее отсутствия,
|
8
|
+
# в случае ее отсутствия, вероятнее всего она была удалена
|
9
9
|
begin
|
10
10
|
model = auditable_type.constantize
|
11
11
|
rescue NameError
|
@@ -51,7 +51,12 @@ module Audited
|
|
51
51
|
private
|
52
52
|
|
53
53
|
def model_reflections(model)
|
54
|
-
model.reflections.
|
54
|
+
model.reflections.map do |_rel, reflection|
|
55
|
+
# игнорирование полиморфных связей
|
56
|
+
unless reflection.options[:polymorphic]
|
57
|
+
[reflection.foreign_key, reflection.klass]
|
58
|
+
end
|
59
|
+
end.compact.to_h
|
55
60
|
end
|
56
61
|
|
57
62
|
def changes_from_to
|
data/lib/audited_serialize.rb
CHANGED
@@ -8,18 +8,6 @@ module Audited
|
|
8
8
|
template 'locale.rb', File.join('config/locales/audited_serialize.ru.yml')
|
9
9
|
end
|
10
10
|
|
11
|
-
private
|
12
|
-
|
13
|
-
def models
|
14
|
-
Rails.application.eager_load!
|
15
|
-
|
16
|
-
ActiveRecord::Base.descendants.map do |model|
|
17
|
-
if model.respond_to?(:auditing_enabled)
|
18
|
-
model.to_s
|
19
|
-
end
|
20
|
-
end.compact.sort
|
21
|
-
end
|
22
|
-
|
23
11
|
end
|
24
12
|
end
|
25
13
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: audited-serialize
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0.
|
4
|
+
version: 1.0.5
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Павел Бабин
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2024-
|
11
|
+
date: 2024-06-18 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: activesupport
|
@@ -48,6 +48,7 @@ files:
|
|
48
48
|
- lib/audited-serialize.rb
|
49
49
|
- lib/audited/audit_extensions.rb
|
50
50
|
- lib/audited/locale/ru.yml
|
51
|
+
- lib/audited/rake_tasks.rb
|
51
52
|
- lib/audited/serialization.rb
|
52
53
|
- lib/audited/serialization_changes/array_module.rb
|
53
54
|
- lib/audited/serialization_changes/boolean_module.rb
|