diff --git a/app/controllers/placements_controller.rb b/app/controllers/placements_controller.rb index c6c47f35..dea89dfa 100644 --- a/app/controllers/placements_controller.rb +++ b/app/controllers/placements_controller.rb @@ -52,7 +52,7 @@ def create_or_update(back_action) :incertae_sedis, :incertae_sedis_text, :parent, :preferred, :publication ) - @placement.incertae_sedis = par[:incertae_sedis] + @placement.incertae_sedis = par[:incertae_sedis].presence @placement.incertae_sedis_text = par[:incertae_sedis_text] if @name.placement @placement.preferred = par[:preferred] if current_user.curator? diff --git a/app/models/name.rb b/app/models/name.rb index 93f39c1e..cd84c60f 100644 --- a/app/models/name.rb +++ b/app/models/name.rb @@ -122,6 +122,7 @@ class Name < ApplicationRecord message: 'can only contain letters, dashes, dots, and apostrophe' } ) + validates(:incertae_sedis, presence: true, allow_nil: true) validates( :incertae_sedis, absence: { if: :parent, diff --git a/app/models/placement.rb b/app/models/placement.rb index bcd0b471..8856977d 100644 --- a/app/models/placement.rb +++ b/app/models/placement.rb @@ -9,6 +9,7 @@ class Placement < ApplicationRecord has_rich_text(:incertae_sedis_text) validates(:incertae_sedis_text, presence: true, if: :incertae_sedis?) + validates(:incertae_sedis, presence: true, allow_nil: true) validates( :incertae_sedis, absence: { if: :parent,