diff options
| author | erdgeist <erdgeist@erdgeist.org> | 2026-08-01 19:26:25 +0200 |
|---|---|---|
| committer | erdgeist <erdgeist@erdgeist.org> | 2026-08-01 19:26:25 +0200 |
| commit | 9b442b69d363d47162a4d499c5184a3c394b75dc (patch) | |
| tree | de8fe1160937487513fc36c2e4afef76b4eb08fb /app/controllers/nodes_controller.rb | |
| parent | c2d48649f8c907e7716a714ddb1261144013d9be (diff) | |
Report validation failures without the exception preamble
Diffstat (limited to 'app/controllers/nodes_controller.rb')
| -rw-r--r-- | app/controllers/nodes_controller.rb | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/app/controllers/nodes_controller.rb b/app/controllers/nodes_controller.rb index 383fb72c..ca30976f 100644 --- a/app/controllers/nodes_controller.rb +++ b/app/controllers/nodes_controller.rb | |||
| @@ -163,7 +163,7 @@ class NodesController < ApplicationController | |||
| 163 | flash[:error] = t("flash.common.locked_by_other") | 163 | flash[:error] = t("flash.common.locked_by_other") |
| 164 | redirect_to node_path(@node) | 164 | redirect_to node_path(@node) |
| 165 | rescue ActiveRecord::RecordInvalid => e | 165 | rescue ActiveRecord::RecordInvalid => e |
| 166 | flash[:error] = e.message | 166 | flash[:error] = e.record.errors.full_messages.to_sentence |
| 167 | redirect_to node_path(@node) | 167 | redirect_to node_path(@node) |
| 168 | end | 168 | end |
| 169 | 169 | ||
| @@ -176,7 +176,7 @@ class NodesController < ApplicationController | |||
| 176 | flash[:error] = t("flash.nodes.restore_target_missing") | 176 | flash[:error] = t("flash.nodes.restore_target_missing") |
| 177 | redirect_to node_path(@node) | 177 | redirect_to node_path(@node) |
| 178 | rescue ActiveRecord::RecordInvalid => e | 178 | rescue ActiveRecord::RecordInvalid => e |
| 179 | flash[:error] = e.message | 179 | flash[:error] = e.record.errors.full_messages.to_sentence |
| 180 | redirect_to node_path(@node) | 180 | redirect_to node_path(@node) |
| 181 | end | 181 | end |
| 182 | 182 | ||
| @@ -186,7 +186,8 @@ class NodesController < ApplicationController | |||
| 186 | redirect_to trashed_nodes_path | 186 | redirect_to trashed_nodes_path |
| 187 | 187 | ||
| 188 | rescue ActiveRecord::RecordInvalid, ActiveRecord::RecordNotDestroyed => e | 188 | rescue ActiveRecord::RecordInvalid, ActiveRecord::RecordNotDestroyed => e |
| 189 | flash[:error] = e.message | 189 | messages = e.record.errors.full_messages |
| 190 | flash[:error] = messages.any? ? messages.to_sentence : e.message | ||
| 190 | redirect_to node_path(@node) | 191 | redirect_to node_path(@node) |
| 191 | end | 192 | end |
| 192 | 193 | ||
| @@ -195,7 +196,7 @@ class NodesController < ApplicationController | |||
| 195 | flash[:notice] = t("flash.nodes.published") | 196 | flash[:notice] = t("flash.nodes.published") |
| 196 | redirect_to node_path(@node) | 197 | redirect_to node_path(@node) |
| 197 | rescue ActiveRecord::RecordInvalid => e | 198 | rescue ActiveRecord::RecordInvalid => e |
| 198 | flash[:error] = e.message | 199 | flash[:error] = e.record.errors.full_messages.to_sentence |
| 199 | redirect_to node_path(@node) | 200 | redirect_to node_path(@node) |
| 200 | end | 201 | end |
| 201 | 202 | ||
