diff options
| author | erdgeist <erdgeist@erdgeist.org> | 2026-07-17 22:12:02 +0200 |
|---|---|---|
| committer | erdgeist <erdgeist@erdgeist.org> | 2026-07-17 22:12:02 +0200 |
| commit | 1374ab51138a00024b0fe148394dbe4ea7f91578 (patch) | |
| tree | 0af68464707a41fe1b585527aaf76237d0fdb456 /app/models/page.rb | |
| parent | 71a95f4ca6460a7c2bc345e8b32dbef03d6dd985 (diff) | |
Fix the cleanup cascade for a real node destroy
related_assets rows outlived their pages; head and draft carried a
dependent destroy that double-destroyed rows has_many :pages
already owns. Autosave keeps its own -- autosave pages carry no
node_id, so pages does not reach them.
Diffstat (limited to 'app/models/page.rb')
| -rw-r--r-- | app/models/page.rb | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/app/models/page.rb b/app/models/page.rb index be21ff7b..c4d66fc4 100644 --- a/app/models/page.rb +++ b/app/models/page.rb | |||
| @@ -25,7 +25,7 @@ class Page < ApplicationRecord | |||
| 25 | belongs_to :node, optional: true | 25 | belongs_to :node, optional: true |
| 26 | belongs_to :user, optional: true | 26 | belongs_to :user, optional: true |
| 27 | belongs_to :editor, :class_name => "User", optional: true | 27 | belongs_to :editor, :class_name => "User", optional: true |
| 28 | has_many :related_assets | 28 | has_many :related_assets, :dependent => :destroy |
| 29 | has_many :assets, -> { order("position ASC") }, :through => :related_assets | 29 | has_many :assets, -> { order("position ASC") }, :through => :related_assets |
| 30 | 30 | ||
| 31 | # Named scopes | 31 | # Named scopes |
