diff --git a/app/controllers/directors_controller.rb b/app/controllers/directors_controller.rb index 68b50fa..59db5ba 100644 --- a/app/controllers/directors_controller.rb +++ b/app/controllers/directors_controller.rb @@ -53,6 +53,9 @@ def destroy respond_to do |format| format.html { redirect_to directors_url, notice: "Director was successfully destroyed." } format.json { head :no_content } + format.js do + render template "directors/destroy.js.erb" + end end end diff --git a/app/controllers/movies_controller.rb b/app/controllers/movies_controller.rb index 3a4280a..4ea4c8f 100644 --- a/app/controllers/movies_controller.rb +++ b/app/controllers/movies_controller.rb @@ -56,6 +56,7 @@ def destroy end end + private # Use callbacks to share common setup or constraints between actions. def set_movie diff --git a/app/models/actor.rb b/app/models/actor.rb index c2d1e15..c7318c4 100644 --- a/app/models/actor.rb +++ b/app/models/actor.rb @@ -1,2 +1,3 @@ class Actor < ApplicationRecord + has_many :characters, dependent: :destroy end diff --git a/app/models/director.rb b/app/models/director.rb index 36af249..1603458 100644 --- a/app/models/director.rb +++ b/app/models/director.rb @@ -1,2 +1,3 @@ class Director < ApplicationRecord + has_many :movies, dependent: :destroy end diff --git a/app/models/movie.rb b/app/models/movie.rb index d5ba676..3a4fd91 100644 --- a/app/models/movie.rb +++ b/app/models/movie.rb @@ -1,3 +1,4 @@ class Movie < ApplicationRecord belongs_to :director + has_many :characters, dependent: :destroy end diff --git a/app/views/directors/destroy.js.erb b/app/views/directors/destroy.js.erb new file mode 100644 index 0000000..d8992a5 --- /dev/null +++ b/app/views/directors/destroy.js.erb @@ -0,0 +1 @@ +$("#<%= dom_id(@director) %>").remove(); diff --git a/app/views/directors/index.html.erb b/app/views/directors/index.html.erb index 0cccaa4..32cc08a 100644 --- a/app/views/directors/index.html.erb +++ b/app/views/directors/index.html.erb @@ -20,7 +20,7 @@