aboutsummaryrefslogtreecommitdiffstats
path: root/002-Ice-cream.md
blob: d2283e4ce276e7dc6a61c253ebfabdff81f1d4a1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
Ice cream
=========

1. Ajoutez un modèle pour nos glaces :

		rails g model ice_cream flavor:string manufacturer:string

2. Lancez les migrations :

		rails db:migrate

2. Créez une nouvelle glace dans la console Rails :

		$ rails c
		> IceCream.create(flavor: 'Vanille', manufacturer: 'Picard')

	Sortez de la console avec Control-D

3. Créez un controller pour nos glaces :

		rails g controller ice_creams index --skip-routes

4. Ajouter une route index. Ouvrez `config/routes.rb` et écrivez :

		root 'ice_creams#index'

5. Dans un nouveau terminal, lancez le serveur de développement Rails :

		rails s

	Naviguez à `http://localhost:3000`, et vous devrez voir un placeholder pour
	la page index des glaces.

6. Ouvrez notre controller (`app/controllers/ice_creams_controller.rb`) et
   ajoutez cette ligne à la méthode `index` :

		@ice_creams = IceCream.all

	Les variables d'instance, précédées par des `@`, sont accessibles dans les
	templates.

7. Ouvrez notre template index (`app/views/ice_creams/index.html.erb`).
   Remplacez le contenu avec :

		<% if @ice_creams.present? %>
			<ul>
				<% @ice_creams.each do |ice_cream| %>
					<li>
						<%= ice_cream.flavor %>, <%= ice_cream.manufacturer %>
					</li>
				<% end %>
			</ul>
		<% end %>

8. Rechargez la page dans votre navigateur. Vous devrez voir la glace que nous
   avons crées auparavant affiché sur la page.

9. Ouvrez le layout (`app/views/layouts/application.html.erb`), et ajoutez cette
   ligne au-dessus du `<%= yield %>` :

		<h1>Deux Scoops</h1>

	Quand vous rechargez la page, un header devrait apparaître au-dessus de la
	liste de glaces. L'HTML dans le template layout est rendu sur tous les pages
	de l'application.