soft_deletion 1.11.0 → 1.12.0

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: aa304747a0e4749f973d98933fde9fd02fecc120f058dedba835ae68920d7b95
4
- data.tar.gz: c21df829755fe43cc19272fe307d32c5a0b62b5e8aa9148e2fd511d23b5532b4
3
+ metadata.gz: 24466acf8a31d8d66e69516ff6714f32cd10b3e8c3c093007d93e3f4bb5974eb
4
+ data.tar.gz: 57b97455f434d22a9a6c1bb751299a17d0d7e3258f26dcf42fc23e3fbf127137
5
5
  SHA512:
6
- metadata.gz: f07e9ae9e39905458c04cd71a28be75b0f7f1dc9abce4d169adab2ed635f42b598e3b5f4677d46a42cade1f858f83baa1edc28b746e765e3c1d7fd99a88d8192
7
- data.tar.gz: 9a4ddb8f61ba8f5cf4de6a0478e1cc12ec088cf6c8a61d2d1c71052f2aee5e1ea9fd674d5933457c2c03abddfb74f4963c5a1dd77ee9921b7a2423f6e5707c2e
6
+ metadata.gz: d2f0cefd7031edd4bf235b1026a5cb5cd0585b3cb2db4d22dc83102a3869c1eee8cd3921df2769ca94f49c596881920c311992550795374105c731d2e7ba8ea8
7
+ data.tar.gz: 82f93c985c8db9b69749a78e65c55e30f5857f338d62685501a8bc9a7c9c034e8724c8b3a455d7612fb98d98c15fcde51d9eb529930f203df56567cd4eb2aee9
data/Readme.md CHANGED
@@ -44,6 +44,26 @@ user.products.count == 10
44
44
 
45
45
  # soft delete many
46
46
  User.soft_delete_all!(1,2,3,4)
47
+
48
+ # get soft deleted records
49
+ User.soft_deleted
50
+ ```
51
+
52
+ To add the `deleted_at` to your model, you can either generate a migration using:
53
+
54
+ ```
55
+ rails generate migration add_deleted_at_to_users deleted_at:datetime:index
56
+ ```
57
+
58
+ or create a migration file yourself like:
59
+
60
+ ```Ruby
61
+ class AddDeletedAtToUsers < ActiveRecord::Migration[6.0]
62
+ def change
63
+ add_column :users, :deleted_at, :datetime
64
+ add_index :users, :deleted_at
65
+ end
66
+ end
47
67
  ```
48
68
 
49
69
  TODO
@@ -26,6 +26,10 @@ module SoftDeletion
26
26
  Thread.current[key] = nil
27
27
  end
28
28
 
29
+ def soft_deleted
30
+ with_deleted { where.not(deleted_at: nil) }
31
+ end
32
+
29
33
  def mark_as_soft_deleted_sql
30
34
  { deleted_at: Time.now }
31
35
  end
@@ -1,3 +1,3 @@
1
1
  module SoftDeletion
2
- VERSION = '1.11.0'
2
+ VERSION = '1.12.0'
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: soft_deletion
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.11.0
4
+ version: 1.12.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Michael Grosser
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2024-11-09 00:00:00.000000000 Z
11
+ date: 2024-11-25 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activerecord