[RUBY] Faisons ressembler à des rails (vue)

introduction

On dit souvent que le développement d'applications utilisant des rails est une boîte noire.

Par conséquent, je vais le disséquer petit à petit. Pour ce faire, nous allons créer un modèle de type Rails.

Cette fois, en tant qu'édition de vue, nous visons à mettre en place un serveur et à afficher la page d'accueil à l'aide de WEBRick, qui est une bibliothèque ruby.

La structure du répertoire cible est la suivante.

directory
  |- app
      |- views
           |- basic_pages
               |- home.html.erb
  |- srv.rb

environnement

・ Rubis 2.7.1 ・ Ubuntu 20.04.1 LTS

Lecteurs cibles

・ Ceux qui sont intéressés par cet article ・ Ceux qui ont utilisé Rails et veulent réfléchir à son fonctionnement

point

    1. Configurer un serveur ① Créez un fichier script (srv.rb) pour configurer un serveur ② Exécutez srv.rb
  1. Afficher la page d'accueil ① Créez un fichier de vue de page d'accueil (app / views / basic_pages / home.html) ② Définissez le chemin racine sur la page d'accueil ③ Correspond au fichier erb

1. 1. Configurer un serveur

Commençons par configurer un serveur. En d'autres termes, rendons-le accessible à http: // localhost: 3000 (ci-après chemin racine). Si vous ne faites rien, vous ne devriez pas pouvoir accéder à cette adresse.

Par conséquent, pour configurer un serveur, il est nécessaire de faire les deux choses suivantes.

① Créez un fichier script (srv.rb) pour configurer un serveur ② Exécutez srv.rb

① Créez un fichier script pour configurer un serveur

La signification de ce fichier est de mettre en place un serveur.

src.rb


require 'webrick' 

op = { BindAddress:  "127.0.0.1", Port: 3000, DocumentRoot: "." }

s = WEBrick::HTTPServer.new(op)
s.start

Référence ↓ ↓ ↓ https://techacademy.jp/magazine/19901

② Exécutez srv.rb

Tapez la commande suivante dans le terminal.

Terminal


ruby srv.rb

Ensuite, vous devriez voir un journal comme celui ci-dessous.

[2020-11-05 19:36:40] INFO  WEBrick 1.6.0
[2020-11-05 19:36:40] INFO  ruby 2.7.1 (2020-03-31) [x86_64-linux]
[2020-11-05 19:36:40] INFO  WEBrick::HTTPServer#start: pid=15542 port=3000
::1 - - [05/Nov/2020:19:36:43 JST] "GET / HTTP/1.1" 200 1022
- -> /

Lorsque vous accédez au chemin racine, Screenshot from 2020-11-05 19-37-22.png L'écran devrait ressembler à ceci. Le serveur est maintenant opérationnel.

Si vous souhaitez arrêter le serveur, appuyez sur Ctrl </ em> + C </ em>.

2. Afficher la page d'accueil

Ensuite, créons une page d'accueil et la rendons accessible. Nous le ferons dans l'ordre suivant.

① Créez un fichier de vue de page d'accueil (app / views / basic_pages / home.html) ② Définissez le chemin racine sur la page d'accueil ③ Correspond au fichier erb

① Créez un fichier de vue de page d'accueil (app / views / basic_pages / home.html)

app/views/basic_pages/home.html


<html>
 <head>
    <meta charset="utf-8">
  </head>
  <body>
    <h1>page d'accueil</h1>
    <p>Hello, World</p>
  </body>
</html>

Lorsque vous configurez le serveur et y accédez, il doit ressembler à ce qui suit. Screenshot from 2020-11-05 20-12-18.png À partir de là, cliquez sur "app /" → "views /" → "basic_pages /" → "home.html" ou allez à http: // localhost: 3000 / app / views / basic_pages / home.html Vous pouvez afficher la page d'accueil en y accédant directement. Screenshot from 2020-11-05 20-25-38.png

② Définissez le chemin racine sur la page d'accueil

Définissons l'URL de la page d'accueil sur http: // localhost: 3000.

srv.rb


require 'webrick'

op = {
    BindAdress: "127.0.1",
    Port: 3000,
    DocumentRoot: "app/views/basic_pages/home.html"
    #Changer le chemin racine(Désormais, changer le chemin racine signifie changer la description ici.) 
}

s = WEBrick::HTTPServer.new(op)
s.start

Maintenant, lorsque vous accédez au chemin racine, vous serez redirigé vers la page d'accueil.

③ Correspond au fichier erb

Essayons de changer l'extension du nom de fichier de la page d'accueil de .html à .html.erb. Parallèlement à cela, le contenu du chemin racine et des fichiers de page d'accueil sera le suivant.

srv.rb


require 'webrick'

op = {
    BindAdress: "127.0.1",
    Port: 3000,
    DocumentRoot: "app/views/basic_pages/home.html.erb"
    #Changer le chemin racine
}

s = WEBrick::HTTPServer.new(op)
s.start

erb:app/views/basic_pages/home.html.erb


<html>
  <head>
    <meta charset="utf-8">
  </head>
  <body>
    <h1>page d'accueil</h1>
    <p>Hello, World</p>
    <%= 1 + 4 %> <!--ajouter à-->
  </body>
</html>

Si le fichier erb est reflété, il doit être "5" sous "Hello, World". Cependant, il devient "<% = 1 + 4%>".

En d'autres termes, le fichier erb est traité comme un fichier html.

Pour refléter l'extension erb, vous devez modifier le paramètre (srv.rb).

srv.rb


require 'webrick'

op = {
    BindAdress: "127.0.1",
    Port: 3000,
    DocumentRoot: "app/views/basic_pages/home.html.erb"
}

#Prend en charge l'extension erb
WEBrick::HTTPServlet::FileHandler.add_handler("erb", WEBrick::HTTPServlet::ERBHandler)

s = WEBrick::HTTPServer.new(op)
s.start

Cela devrait refléter l'extension erb. Reconstruisons le serveur et accédons au chemin racine.

Il doit être "5" au lieu de "<% = 1 + 4%>".

Référence ↓ ↓ ↓ https://www.kkaneko.jp/pro/rubydb/webrick.html

Sommaire

Cette fois, comme il s'agit d'une édition de vue, nous avons implémenté la construction du serveur en utilisant WEBRick et l'affichage de la page d'accueil.

À l'avenir, je ferai également l'édition du contrôleur et l'édition du modèle.

Recommended Posts