arjad_version_tracker 0.3.0 → 0.4.0
Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: bbf705d7171dc9d343910f893066c4f821f1a9cf6e101544fa339a405b0425c4
|
4
|
+
data.tar.gz: b5a6cbf1dfe3dc1444a619fce5e4ab3fb05f1a20b9f88be2f8d25c381d99271b
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: ec1f79121f31b5c4a8f457a4b812a9187308236ce7b727e26d7dc00855fccf321cd5a20f9a07e9ce709bb0ad1beec1b7d6fed7cb60269206397f14601c90e982
|
7
|
+
data.tar.gz: 176cc8d39d9d1ee2a01c3e8bd2bb84e50e2292bad5e06b8ce63f347ecac599a7cc322e1f308221f2e7782baa4255789ccc1b85186f2dd11bb3ccb9b5f83a9120
|
@@ -15,6 +15,6 @@ module ArjadVersionTracker
|
|
15
15
|
private
|
16
16
|
|
17
17
|
def track_version
|
18
|
-
versions.create!(attributes.except("id", "created_at", "updated_at"))
|
18
|
+
versions.create!(versionable_id: self.id, versionable_name: self.class.name, data: attributes.except("id", "created_at", "updated_at"))
|
19
19
|
end
|
20
20
|
end
|
@@ -1,4 +1,5 @@
|
|
1
1
|
# lib/generators/arjad_version_tracker/install_generator.rb
|
2
|
+
|
2
3
|
require 'rails/generators/base'
|
3
4
|
|
4
5
|
module ArjadVersionTracker
|
@@ -6,19 +7,12 @@ module ArjadVersionTracker
|
|
6
7
|
class InstallGenerator < Rails::Generators::Base
|
7
8
|
source_root File.expand_path('templates', __dir__)
|
8
9
|
|
9
|
-
def
|
10
|
-
|
11
|
-
template 'migration.rb', "db/migrate/#{timestamp}_create_#{table_name}_versions.rb"
|
12
|
-
end
|
13
|
-
|
14
|
-
private
|
15
|
-
|
16
|
-
def table_name
|
17
|
-
model_name.pluralize.underscore
|
10
|
+
def create_migration
|
11
|
+
migration_template 'migration.rb', "db/migrate/#{timestamp}_create_versions.rb"
|
18
12
|
end
|
19
13
|
|
20
|
-
def
|
21
|
-
|
14
|
+
def self.next_migration_number(dir)
|
15
|
+
Time.now.utc.strftime("%Y%m%d%H%M%S")
|
22
16
|
end
|
23
17
|
end
|
24
18
|
end
|
@@ -1,13 +1,12 @@
|
|
1
1
|
# lib/generators/arjad_version_tracker/templates/migration.rb
|
2
|
-
class
|
2
|
+
class CreateVersions < ActiveRecord::Migration[6.0]
|
3
3
|
def change
|
4
|
-
create_table
|
4
|
+
create_table :versions do |t|
|
5
5
|
# Add necessary fields here to store the version data
|
6
|
-
t.references :<%= table_name.singularize %>, polymorphic: true, null: false
|
7
6
|
t.jsonb :data
|
8
|
-
|
7
|
+
t.string :versionable_name
|
8
|
+
t.integer :versionable_id
|
9
9
|
t.timestamps
|
10
10
|
end
|
11
11
|
end
|
12
12
|
end
|
13
|
-
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: arjad_version_tracker
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.4.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- arjad
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2024-05-
|
11
|
+
date: 2024-05-25 00:00:00.000000000 Z
|
12
12
|
dependencies: []
|
13
13
|
description: Arjad Version Tracker is a Ruby gem designed to simplify tracking and
|
14
14
|
managing version history of models in Rails applications. It provides a straightforward
|