From 1aafdc392800148e7de5cc3acb671b9e6720b1db Mon Sep 17 00:00:00 2001 From: evazion Date: Tue, 13 Jun 2017 15:23:38 -0500 Subject: [PATCH] commentaries: migrate columns to non-null. --- app/models/artist_commentary.rb | 8 ++--- ...elds_to_non_null_on_artist_commentaries.rb | 29 +++++++++++++++++++ db/structure.sql | 10 ++++--- 3 files changed, 39 insertions(+), 8 deletions(-) create mode 100644 db/migrate/20170613200356_change_fields_to_non_null_on_artist_commentaries.rb diff --git a/app/models/artist_commentary.rb b/app/models/artist_commentary.rb index 3f60b5c49..77df69f13 100644 --- a/app/models/artist_commentary.rb +++ b/app/models/artist_commentary.rb @@ -34,15 +34,15 @@ class ArtistCommentary < ActiveRecord::Base end if params[:original_present] == "yes" - q = q.where("(original_title is not null and original_title != '') or (original_description is not null and original_description != '')") + q = q.where("(original_title != '') or (original_description != '')") elsif params[:original_present] == "no" - q = q.where("(original_title is null or original_title = '') and (original_description is null or original_description = '')") + q = q.where("(original_title = '') and (original_description = '')") end if params[:translated_present] == "yes" - q = q.where("(translated_title is not null and translated_title != '') or (translated_description is not null and translated_description != '')") + q = q.where("(translated_title != '') or (translated_description != '')") elsif params[:translated_present] == "no" - q = q.where("(translated_title is null or translated_title = '') and (translated_description is null or translated_description = '')") + q = q.where("(translated_title = '') and (translated_description = '')") end if params[:post_tags_match].present? diff --git a/db/migrate/20170613200356_change_fields_to_non_null_on_artist_commentaries.rb b/db/migrate/20170613200356_change_fields_to_non_null_on_artist_commentaries.rb new file mode 100644 index 000000000..9ed18ba54 --- /dev/null +++ b/db/migrate/20170613200356_change_fields_to_non_null_on_artist_commentaries.rb @@ -0,0 +1,29 @@ +class ChangeFieldsToNonNullOnArtistCommentaries < ActiveRecord::Migration + def up + ArtistCommentary.without_timeout do + change_column_null(:artist_commentaries, :original_title, false, "") + change_column_null(:artist_commentaries, :translated_title, false, "") + change_column_null(:artist_commentaries, :original_description, false, "") + change_column_null(:artist_commentaries, :translated_description, false, "") + + change_column_default(:artist_commentaries, :original_title, "") + change_column_default(:artist_commentaries, :translated_title, "") + change_column_default(:artist_commentaries, :original_description, "") + change_column_default(:artist_commentaries, :translated_description, "") + end + end + + def down + ArtistCommentary.without_timeout do + change_column_null(:artist_commentaries, :original_title, true) + change_column_null(:artist_commentaries, :translated_title, true) + change_column_null(:artist_commentaries, :original_description, true) + change_column_null(:artist_commentaries, :translated_description, true) + + change_column_default(:artist_commentaries, :original_title, nil) + change_column_default(:artist_commentaries, :translated_title, nil) + change_column_default(:artist_commentaries, :original_description, nil) + change_column_default(:artist_commentaries, :translated_description, nil) + end + end +end diff --git a/db/structure.sql b/db/structure.sql index e195bb8b0..5623e15d0 100644 --- a/db/structure.sql +++ b/db/structure.sql @@ -603,10 +603,10 @@ ALTER SEQUENCE api_keys_id_seq OWNED BY api_keys.id; CREATE TABLE artist_commentaries ( id integer NOT NULL, post_id integer NOT NULL, - original_title text, - original_description text, - translated_title text, - translated_description text, + original_title text DEFAULT ''::text NOT NULL, + original_description text DEFAULT ''::text NOT NULL, + translated_title text DEFAULT ''::text NOT NULL, + translated_description text DEFAULT ''::text NOT NULL, created_at timestamp without time zone, updated_at timestamp without time zone ); @@ -7563,3 +7563,5 @@ INSERT INTO schema_migrations (version) VALUES ('20170526183928'); INSERT INTO schema_migrations (version) VALUES ('20170608043651'); +INSERT INTO schema_migrations (version) VALUES ('20170613200356'); +