[Rails] Procédure de liaison de bases de données avec Ruby On Rails

Paramètres du modèle

L'échantillon est `` 1 à plusieurs ''

1 côté

post.rb


class Post < ApplicationRecord
  has_many :comments
end

Multi-faces

comment.rb


class Post < ApplicationRecord
  belongs_to :post
end

Paramètres de routage

routes.rb


resources :posts do
  resources :comments
end

routes.rb


resources :posts do
  resources :comments, only: [:create, :destroy]
end

Comment recevoir les paramètres sur le formulaire

Placer entre [].

???.html.rb


<%= form_for [@post, @post.comments.build] do |f| %>
<p>
  <%= f.text_field :body %>
</p>
<p>
  <%= f.submit %>
</p>
<% end %>

Comment sortir et recevoir chez Destroy

Depuis le routage, les messages peuvent recevoir des paramètres avec : post_id et des commentaires avec `` ``: id.

DELETE /posts/:post_id/comments/:id(.:format)      comments#destroy

???.html.rb


<% if @post.comments.any? %>
<ul>
<% @post.comments.each do |comment|%>
<li><%= comment.body %><span> </span><span><%= link_to "[X]", post_comment_path(@post, comment), method: :delete %></span></li>

???.controller.rb


def destroy
  @post = Post.find(params[:post_id])
  @comment = @post.comments.find(params[:id])
  @comment.destroy
  redirect_to post_path(@post)
end

Recommended Posts

[Rails] Procédure de liaison de bases de données avec Ruby On Rails
[Procédure 1 pour les débutants] Ruby on Rails: Construction d'un environnement de développement
[Ruby on Rails] Afficher le test avec RSpec
Remarques sur l'utilisation de FCM avec Ruby on Rails
[Ruby on Rails] Test du contrôleur avec RSpec
[Ruby on Rails] Test de modèle avec RSpec
Explication de Ruby sur rails pour les débutants ①
Paramètres de validation pour la fonction de connexion Ruby on Rails
Présentation de Rspec avec Ruby on Rails x Docker
Publiez l'application avec ruby on rails
[Ruby on Rails] Mémo d'introduction Select2 pour Webpacker
[Ruby on Rails] Créez un graphique circulaire des totaux par colonne avec Chartkick
Principes de base de Ruby on Rails
Association Ruby On Rails
Déterminez la page actuelle avec Ruby on Rails
[Ruby on Rails] Téléversement de plusieurs images avec refile
J'ai fait un portfolio avec Ruby On Rails
Exécutez des tests Ruby on Rails RSpec avec des actions GitHub
Explication de Ruby sur rails pour les débutants ⑥ ~ Création de validation ~
Explication de Ruby on rails pour les débutants ② ~ Création de liens ~
Création d'un plan de site au format RSS / Atom avec Ruby on Rails
Explication de Ruby on rails pour les débutants ⑦ ~ Implémentation Flash ~
Record d'apprentissage de Ruby on rails -2020.10.03
Record d'apprentissage Ruby on rails -2020.10.04
[Ruby on Rails] Debuck (binding.pry)
Record d'apprentissage de Ruby on rails -2020.10.05
Record d'apprentissage de Ruby on rails -2020.10.09
Préparation au développement avec Rails
Record d'apprentissage Ruby on rails-2020.10.07 ②
Utilisez plusieurs bases de données avec Rails 6.0
Record d'apprentissage Ruby on rails-2020.10.07 ①
Annuler la migration de Ruby on Rails
Record d'apprentissage de Ruby on rails -2020.10.06
Résumé de la validation Ruby on Rails
Mémorandum de base Ruby on Rails
J'ai essayé d'installer le plugin lié à Ruby on Rails avec vim-plug
[Ruby on Rails] Ajouter une colonne avec des contraintes de clé externe
Explication de Ruby on rails pour les débutants ③ ~ Création d'une base de données ~
Installez Ruby sur MSYS2 avec pacman
[Ruby on Rails] Read try (: [] ,: key)
Variables Ruby on Rails, résumé constant
[Ruby on Rails] Introduction de la fonction de pagination
Progatez Ruby on Rails
Comment utiliser Ruby on Rails
Programmation avec ruby (en route)
Ruby on Rails compatible japonais-anglais i18n
(Ruby on Rails6) "Effacer" le contenu publié
[Ruby on Rails] Fonction de sortie CSV