[RUBY] Tutoriel de mastication des rails [Chapitre 3 Création de pages presque statiques]

3.1 Configuration

[Entraine toi]

    1. Vérifiez si Bitbucket rend correctement la notation Markdown README (Listing 3.3) au format HTML.
  1. Essayez d'accéder à l'URL racine de production (Heroku) pour voir si le déploiement a réussi.

⇒Veuillez l'essayer tel quel.

3.2 Page statique

■ Contrôleur Un contrôleur est un conteneur qui regroupe une collection de pages Web (essentiellement dynamiques). → Je ne comprends pas un peu.

■rails generate controller StaticPages home help Static_pages_controller.rb est généré dans le contrôleur. dans routes.rb ・ Static_pages / home ・ Static_pages / aide Est généré.

À ce stade, entrez "static_pages / home" dans la barre d'adresse pour déplacer. La destination est la vue "home.html.erb".

■ Méthode HTTP Il existe quatre types: GET, POST, PATCH et DELETE. GET: page d'appel POST: Utilisé lorsque l'utilisateur entre quelque chose et l'envoie. PATCH: probablement utilisé pour la mise à jour. SUPPRIMER: utilisé pour la suppression

[Entraine toi]

    1. Créez un contrôleur appelé Foo et ajoutez-lui des actions bar et baz. → Utilisez la génération de rails pour générer le contrôleur. rails generate controller Foo bar baz
  1. Essayez de supprimer le contrôleur Foo et ses actions associées en utilisant les techniques introduites dans la colonne 3.1. Voir la colonne →rails destroy controller Foo bar baz

3.3 Commencer par un test

■ Cas de test, suite de tests Un test est appelé un cas de test. Une collection de cas de test est appelée une suite de tests.

■ Conception d'essai sur route Méthode pour poursuivre le développement après l'écriture du code de test

■static_pages_controller_test.rb Il est généré en même temps que les rails g.

test/controllers/static_pages_controller_test.rb


  test "should get home" do
    get static_pages_home_url
    assert_response :success
  end

Ce fichier hérite déjà de ActionDispatch :: IntegrationTest, donc Je comprends que c'est une telle chose. Générez un nouveau test appelé "devrait rentrer à la maison". Accès avec "get static_pages_home_url". Jugez s'il réussit ou non avec "assert_response: success".

■touch app/views/static_pages/about.html.erb Dans le répertoire touch app / views / static_pages Générez un fichier about.html.erb.

Vous pouvez également cliquer avec le bouton droit de la souris et sélectionner "Créer un fichier".

■about.html.erb Vous n'avez pas besoin de .

3.4 Une page légèrement dynamique

→ La page est en cours de refactorisation, il est donc normal de la reporter dans le pire des cas. ■mv app/views/layouts/application.html.erb layout_file Déplacez application.html.erb vers layout_file.

■assert_select "title", "Home | Ruby on Rails Tutorial Sample App" Vérifiez si le contenu de la balise de titre de la page vers laquelle vous vous êtes déplacé est "" Accueil | Exemple d'application du didacticiel Ruby on Rails "".

[Entraine toi]

    1. Avez-vous remarqué que le test du contrôleur StaticPages (Listing 3.24) avait quelques itérations? Surtout le titre de base "Ruby on Rails Tutorial Sample App" a le même contenu pour chaque test. Par conséquent, je voudrais résoudre ce problème en utilisant une méthode spéciale appelée setup (la méthode qui est exécutée juste avant que chaque test ne soit exécuté). Tout d'abord, assurez-vous que le test du Listing 3.30 devient vert (le Listing 3.30 utilise la technique d'expansion d'expression des variables d'instance et des chaînes, que nous avons abordée en 2.2.2, respectivement, 4.4.5 et 4.2, respectivement. Je vais l'expliquer en détail en .2, alors ne vous inquiétez pas si vous ne le comprenez pas maintenant). → C'est gênant de voir beaucoup de mots "Ruby on Rails Tutorial Sample App", non? C'est une histoire.

Remplacez la chaîne Ruby on Rails Tutorial Sample App par @base_title et Nous développons chacun.

■ Fournir une méthode Passez le paramètre avec la méthode provide et recevez-le avec la méthode yield. En unifiant les titres, tout est identique sauf le contenu de la balise .

■app/views/layouts/application.html.erb Ce qui forme la base du design.

[Entraine toi]

    1. Créez une page Contact dans l'exemple d'application 17 (Indice: tout d'abord, reportez-vous au Listing 3.15 et il existe une page avec l'URL / static_pages / contact intitulée "Contact | Ruby on Rails Tutorial Sample App" Créons d'abord un test pour voir si c'est le cas, puis affichons le contenu du Listing 3.40 sur la page Contact, comme nous l'avons fait lorsque nous avons créé la page About en 3.3.3.)
  1. Créez un fichier appelé contact.html.erb dans static_pages /.

routes.rb


<% provide(:title, "Contact") %>
<h1>Contact</h1>
<p>
  Contact the Ruby on Rails Tutorial about the sample app at the
  <a href="https://railstutorial.jp/contact">contact page</a>.
</p>
  1. Faites un test. Changez simplement le nom pour contacter

static_pages_controller_test.rb


test "should get contact" do
    get static_pages_contact_url
    assert_response :success
    assert_select "title", "contact | #{@base_title}"
  end
  1. Définir des itinéraires

routes.rb


get  'static_pages/contact'
  1. Passez le chemin à travers le contrôleur.

static_pages_controller.rb


def contact
end

[Entraine toi]

    1. Avec l'ajout du routage racine au Listing 3.41, nous avons maintenant un assistant Rails appelé root_url (comme avant static_pages_home_url). Essayez d'écrire un test pour le routage racine, en remplaçant la partie marquée FILL_IN dans l'extrait 3.42.

statc_pages n'est pas nécessaire car root n'appartient à aucun répertoire

static_pages_controller_test.rb


test "should get root" do
    get root_url
    assert_response :success
  end

3.5 Enfin

3.6 Configuration avancée

Recommended Posts

Tutoriel de mastication des rails [Chapitre 3 Création de pages presque statiques]
Tutoriel de mastication des rails [Chapitre 2 Application jouet]
tutoriel rails Chapitre 6
tutoriel rails Chapitre 1
tutoriel rails Chapitre 7
tutoriel rails Chapitre 5
tutoriel rails Chapitre 10
tutoriel rails Chapitre 9
tutoriel rails Chapitre 8
Tutoriel Rails Chapitre 3 Apprentissage
Mémorandum du didacticiel Rails (Chapitre 3, 3.1)
Tutoriel Rails Chapitre 4 Apprentissage
Tutoriel Rails Chapitre 1 Apprentissage
Tutoriel Rails Chapitre 2 Apprentissage
[Tutoriel Rails Chapitre 4] Rubis à saveur de Rails
Tutoriel Chewing the Rails [Chapitre 1 De zéro au déploiement] Deuxième moitié
Tutoriel Chewing the Rails [Chapitre 1 De zéro au déploiement] Première moitié
[Tutoriel Rails Chapitre 5] Créer une mise en page
Tutoriel Rails (4e édition) Mémo Chapitre 6
Tutoriel Rails 6e édition Résumé d'apprentissage Chapitre 10
Rails Tutorial 6e édition Résumé de l'apprentissage Chapitre 7
Tutoriel Rails 6e édition Résumé de l'apprentissage Chapitre 4
rails tutry
Tutoriel Rails 6e édition Résumé de l'apprentissage Chapitre 9
Tutoriel Rails 6e édition Résumé de l'apprentissage Chapitre 6
Tutoriel Rails 6e édition Résumé de l'apprentissage Chapitre 5
tutoriel sur les rails
rails tutry
tutoriel sur les rails
Rails Tutorial 6e édition Résumé de l'apprentissage Chapitre 2
Tutoriel Rails Chapitre 0: Apprentissage préliminaire des connaissances de base 5
rails tutry
Tutoriel Rails 6e édition Résumé de l'apprentissage Chapitre 3
tutoriel sur les rails
tutoriel sur les rails
Rails Tutorial 6e édition Résumé d'apprentissage Chapitre 8
Tutoriel Rails Chapitre 1 De zéro au déploiement [Essayer]
Test du tutoriel sur les rails
Mémorandum du didacticiel Rails 1
[Débutant] Tutoriel Rails
Résoudre Gem :: FilePermissionError lors de l'exécution de rails d'installation de gem (Tutoriel Rails Chapitre 1)
Tutoriel Rails 4e édition: Chapitre 1 De zéro au déploiement
Résoudre ActiveRecord :: NoDatabaseError lors du test des rails (Tutoriel Rails Chapitre 3)