En ce qui concerne la fonction de suppression du modèle de révision dans Rails, elle fonctionnait à l'origine sans problème, mais une erreur s'est produite après la mise en œuvre du modèle de commentaire. Je vais le partager car la cause a été clarifiée.
Ruby 2.6.5 Rails 6.0.3.3
Le routage est imbriqué avec reveiw comme parent et comment comme enfant.
config/routes.rb
resources :reviews do
resources :comments, only: [:create, :destroy]
end
Il a été mis en œuvre afin que l'examen soit supprimé. Avant la mise en œuvre du commentaire, il pouvait être supprimé tel quel.
views/reviews/show.html.erb
<%= link_to review_path(id: @review.id), method: :delete do %>
<div>Supprimer l'avis</div>
<div>Vous pouvez supprimer l'avis ici.</div>
<% end %>
Puisque nous avons implémenté le commentaire en tant qu'élément enfant de la révision, nous devons l'implémenter afin que le commentaire soit supprimé en même temps que la révision. Par conséquent, modifiez models / review.rb comme suit.
models/review.rb
has_many :comments
↓↓↓
models/review.rb
has_many :comments, dependent: :destroy
L'implémentation de la fonction de suppression est terminée ici.
https://qiita.com/Tsh-43879562/items/fbc968453a7063776637