Explication de Ruby sur rails pour les débutants ①

introduction

Cette fois, c'est un article de commentaire sur Ruby on rails.

J'expliquerai d'une manière facile à comprendre pour les débutants.

Continuez.

Cette fois, nous demanderons à «Takashi-kun» de coopérer à la rédaction de l'article.

Qu'est-ce que Ruby on rails?

Ruby on rails est un type de framework Web.

Tout d'abord, je vais expliquer ce qu'est un cadre en premier lieu.

Qu'est-ce qu'un cadre?

Un cadre est simplement un "cadre".

Demandez à l'enseignant de Wikipédia ce que signifie le cadre.

En programmation, il s'agit d'un concept abstrait qui tente de donner une fonction spécifique par l'utilisateur en écrasant ou en spécialisant sélectivement le code commun qui a une fonction générale.

C'est toujours un mot difficile, alors je vais le décomposer et l'expliquer.

Je pense qu'il est normal de penser à un cadre comme un "cadre qui fournit diverses fonctions".

Regardons maintenant un exemple concret du cadre.

Bootstrap Lorsque vous essayez de créer un site Web, il est difficile d'écrire du HTML et du CSS de manière régulière.

Naturellement, je veux vous faciliter la tâche. Comment puis-je faciliter les choses?

C'est vrai, vous pouvez en profiter si vous emportez quelque chose que quelqu'un a fait.

Cependant, si le site Web est utilisé tel quel, il se mettra en colère et les variations qui pourront être créées seront limitées.

Takashi a pensé ici.

Takashi-kun "Au fait, les parties utilisées pour le site Web sont limitées. S'il existe un" framework "qui facilite la mise en place individuelle de la partie en-tête et de la partie bouton, n'est-ce pas facile à écrire?"

C'est ainsi que le «Bootstrap» est né.

Bootstrap est un framework CSS qui fournit un framework par partie pour chaque partie de votre site Web.

Qu'est-ce qu'un framework Web?

Vous pouvez comprendre de l'explication jusqu'à présent.

Un framework web est un "framework pour créer des applications web".

Demandons à nouveau à Takashi.

Takashi-kun "C'est terrible de créer une application Web. Mais c'est limité à des fonctions autres que celles utilisées dans l'application Web. Vous pouvez faire fonctionner la base de données en fonction de l'URL saisie par l'utilisateur, créer un fichier HTML et l'envoyer. Vous avez juste besoin d'une fonction de connexion. Quelqu'un peut créer ce framework et vous pouvez l'écrire facilement, non?"

Le résultat est le framework Web et Ruby on rails.

Maintenant, créons une application avec Ruby sur rails.

Création d'un squelette (rails neufs)

Tout d'abord, installez Ruby et Ruby sur des rails sur votre ordinateur local.

Diverses personnes ont écrit des articles sur la construction de l'environnement, je vais donc l'omettre.

Dans la plupart des cas, la création d'un environnement ne fonctionnera pas, mais veuillez continuer à enquêter jusqu'à ce que vous le puissiez. Je t'encourage.

Tout d'abord, accédez au répertoire dans lequel vous souhaitez créer l'application rails et tapez la commande suivante.

rails new qiita_project

Veuillez utiliser n'importe quel nom après «nouveau».

Le fichier sera créé comme suit.

image.png

Vous avez maintenant créé un framework pour créer une application Web.

Serveur Rails

Allez dans le qiita_project que vous avez créé.

cd qiita_project

Vous pouvez maintenant passer au qiita_project que vous avez créé.

Ensuite, démarrons le serveur. La commande suivante.

rails server

Ensuite, entrez l'URL suivante dans le champ URL de votre navigateur, par exemple Chrome.

http://localhost:3000/

image.png

À ce stade, vous avez démarré le serveur.

Créer un contrôleur (les rails génèrent le nom du contrôleur du contrôleur)

Vous pouvez créer un contrôleur avec le code suivant.

Nous verrons ce que fait le contrôleur plus tard.

rails generate controller home

L'exécution du code ci-dessus créera un fichier nommé home_controller.rb sous les contrôleurs app >>

image.png

Jetons un coup d'œil au contenu de home_controller.

home_controller.rb


class HomeController < ApplicationController

end

De cette façon, j'ai pu créer un contrôleur.

Maintenant, expliquons le contrôleur.

Qu'est-ce qu'un contrôleur

Pour comprendre le contrôleur, vous devez d'abord comprendre la figure ci-dessous. Il s'agit du mécanisme sur lequel fonctionne le rail.

image.png

Regardons-les dans l'ordre.

① L'utilisateur envoie une requête au serveur

image.png

Tout d'abord, l'utilisateur de gauche envoie une requête au serveur. Les différentes actions sur la droite sont toutes des histoires côté serveur.

«Envoyer une requête» consiste à demander quelque chose au serveur. Par exemple, si vous entrez une URL, il vous sera demandé (obtenir la demande) "Veuillez envoyer le fichier correspondant à cette URL!", Et si vous essayez de vous connecter avec votre identifiant et votre mot de passe, il vous sera demandé "Envoyer les données. Utilisez-le pour faire quelque chose! »Sera demandé (post request).

② Décidez quel contrôleur utiliser en routant

image.png

Par routage, nous traitons l'URL reçue de l'utilisateur.

Par exemple, supposons que vous receviez l'URL «home / top» d'un utilisateur.

Le routage se traduira alors par un routage appelé «home # top».

Cela signifie "utiliser l'action supérieure du contrôleur domestique". Considérez une action comme un «code qui fait quelque chose» défini pour chaque contrôleur.

Cette fois, par souci de simplicité, je pense que l'utilisateur a demandé (get request) "Merci d'envoyer le fichier correspondant à cette URL!".

Acheminons l'URL "home / top" de l'utilisateur vers la commande pour effectuer l'action supérieure du contrôleur home.

Ajoutez ce qui suit au fichier routes.rb sous le répertoire config.

routes.rb


Rails.application.routes.draw do
  get "home/top" => "home#top"
end

Rechercher le fichier de vue avec le contrôleur

image.png

Supposons qu'un utilisateur vous envoie l'URL «home / top» et qu'elle soit convertie en «home # top» par routage.

Dans ce cas, vous effectuerez l'action supérieure du contrôleur domestique.

Ajoutons l'action supérieure au contrôleur domestique comme suit.

home_controller.rb


class HomeController < ApplicationController
    def top
    end
end

Quand vous écrivez le code comme ceci, le contrôleur home recherche le fichier home / top.html.erb et le renvoie à l'utilisateur.

Créer un fichier de vue

App >> vues Ajoutez le fichier top.html.erb au répertoire personnel en dessous.

image.png

Modifiez le fichier top.html.erb comme suit.

top.html.erb


<h1>Hello World</h1>

De cette façon, j'ai pu créer un fichier de vue.

Voyons en fait la réponse.

Lorsque l'utilisateur saisit l'URL

Redémarrez le serveur avec le code suivant.

rails server

Tapez l'URL suivante dans votre navigateur Web.

http://localhost:3000/home/top

Ensuite, l'écran suivant sera envoyé.

image.png

Jetons un coup d'œil à ce qui se passe.

Lorsque l'URL «http: // localhost: 3000 / home / top» est envoyée, elle sera convertie en «home # top» par routage.

Cela exécutera l'action supérieure du contrôleur domestique.

Rails trouvera alors le fichier top.html.erb dans le répertoire home sous le répertoire app >> views et l'envoyera à l'utilisateur.

À la fin

Cela devient plus long, donc cette fois, c'est ici.

J'espère que vous lirez également le prochain article.

Explication de Ruby on rails pour les débutants ② ~ Création de liens ~

Explication de Ruby on rails pour les débutants ③ ~ Création d'une base de données ~

Explication de Ruby on rails pour les débutants ④ ~ Comment utiliser les règles de nommage et form_Tag ~

Explication de Ruby on rails pour les débutants ⑤ ~ Modifier et supprimer la base de données ~

Explication de Ruby on rails pour les débutants ⑥ ~ Création de la validation ~

Explication de Ruby on rails pour les débutants ⑦ ~ Implémentation de flash ~

Je vous remercie pour votre travail acharné.

Recommended Posts

Explication de Ruby sur rails pour les débutants ①
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 ~
Explication de Ruby on rails pour les débutants ⑦ ~ Implémentation Flash ~
Explication de Ruby on rails pour les débutants ③ ~ Création d'une base de données ~
Explication de Ruby on rails pour les débutants ⑤ ~ Modifier et supprimer la base de données ~
[Procédure 1 pour les débutants] Ruby on Rails: Construction d'un environnement de développement
Explication de Ruby on rails pour les débutants ④ ~ À propos des règles de dénomination et comment utiliser form_Tag ~
Connaissance de base de Ruby on Rails
[Ruby on Rails] Introduction des données initiales
[Rails] Ajout de la fonction de commentaire Ruby On Rails
Rails [Pour les débutants] Implémentation de la fonction de commentaire
[Ruby on Rails] Notation japonaise de l'erreur
[Ruby on rails] Implémentation d'une fonction similaire
Débutant a créé un portfolio avec Ruby on Rails
Ruby on Rails élémentaire
Principes de base de Ruby on Rails
Association Ruby On Rails
Paramètres de validation pour la fonction de connexion Ruby on Rails
Implémentation de la fonction de connexion Ruby on Rails (Session)
[Ruby on Rails] Jusqu'à l'introduction de RSpec
Recommandation de classe de service dans Ruby on Rails
[Ruby on Rails] Mémo d'introduction Select2 pour Webpacker
Ruby on Rails ~ Principes de base de MVC et du routeur ~
[Ruby on Rails] Un mémorandum de modèles de mise en page
[Rails] Procédure de liaison de bases de données avec Ruby On Rails
[Ruby on Rails] Affichage individuel des messages d'erreur
[Ruby on Rails] Communication asynchrone de la fonction de publication, ajax
Record d'apprentissage de Ruby on rails -2020.10.03
Création de portfolio Ruby on Rails
Implémentation de la fonction de connexion Ruby on Rails (édition de devise)
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
Record d'apprentissage Ruby on rails-2020.10.07 ②
(Pour les débutants) [Rails] Installer Devise
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
Essayez d'utiliser l'attribut de requête Ruby on Rails
[Pour les débutants] Explication des classes, des instances et des statiques en Java
[Ruby on Rails] Élimination de Fat Controller-First, logic to model-
(Ruby on Rails6) Affichage de la base de données qui a obtenu l'identifiant de la base de données
Supprimer tout le contenu de la page de liste [Ruby on Rails]