class CreateMidgetTriggers
Public Instance Methods
change()
click to toggle source
# File lib/generators/midget_jobs/templates/create_midget_triggers.rb, line 2 def change execute <<-SQL CREATE OR REPLACE FUNCTION notice_midget_job_insert() RETURNS trigger AS $$ DECLARE channel_name varchar DEFAULT (TG_TABLE_NAME || '_notices'); BEGIN PERFORM pg_notify(channel_name, json_build_object('action', TG_OP, 'id', NEW.id)::text); RETURN NEW; END; $$ LANGUAGE plpgsql; CREATE TRIGGER notice_on_insert AFTER INSERT ON public.midget_jobs FOR EACH ROW EXECUTE PROCEDURE notice_midget_job_insert(); SQL end