質問編集履歴

1

誤字の修正

2018/10/21 11:34

投稿

sirs
sirs

スコア15

test CHANGED
File without changes
test CHANGED
@@ -1,3 +1,105 @@
1
+ Rails初心者です。
2
+
3
+
4
+
5
+ Railstutorial10章でUsersページでユーザーを表示する実装をして、/usersページを開こうとしたら下記のようなエラーが表示されました。
6
+
7
+
8
+
9
+
10
+
11
+ ```ここに言語を入力
12
+
13
+ NoMethodError in Users#index
14
+
15
+ Showing /home/ec2-user/environment/sample_app/app/views/users/index.html.erb where line #7 raised:
16
+
17
+
18
+
19
+ undefined method `downcase' for nil:NilClass
20
+
21
+ Extracted source (around line #5):
22
+
23
+
24
+
25
+ 渡されたユーザーのGravatar画像を返す
26
+
27
+ def gravatar_for(user, size: 80)
28
+
29
+ gravatar_id = Digest::MD5::hexdigest(user.email.downcase)
30
+
31
+ gravatar_url = "https://secure.gravatar.com/avatar/#{gravatar_id}?s=#{size}"
32
+
33
+ image_tag(gravatar_url, alt: user.name, class: "gravatar")
34
+
35
+ end
36
+
37
+
38
+
39
+ # 渡されたユーザーのGravatar画像を返す
40
+
41
+ def gravatar_for(user, size: 80)
42
+
43
+ gravatar_id = Digest::MD5::hexdigest(user.email.downcase)
44
+
45
+ gravatar_url = "https://secure.gravatar.com/avatar/#{gravatar_id}?s=#{size}"
46
+
47
+ image_tag(gravatar_url, alt: user.name, class: "gravatar")
48
+
49
+ end
50
+
51
+
52
+
53
+ Rails.root: /home/ec2-user/environment/sample_app
54
+
55
+
56
+
57
+ Application Trace | Framework Trace | Full Trace
58
+
59
+ app/helpers/users_helper.rb:5:in `gravatar_for'
60
+
61
+ app/views/users/index.html.erb:7:in `block in _app_views_users_index_html_erb__4353731050743654976_70117457819340'
62
+
63
+ app/views/users/index.html.erb:5:in `_app_views_users_index_html_erb__4353731050743654976_70117457819340'
64
+
65
+ Request
66
+
67
+
68
+
69
+ Parameters:
70
+
71
+
72
+
73
+ None
74
+
75
+ Toggle session dump
76
+
77
+ Toggle env dump
78
+
79
+ Response
80
+
81
+
82
+
83
+ Headers:
84
+
85
+
86
+
87
+ None
88
+
89
+ ```
90
+
91
+
92
+
93
+ @usersのどこかが間違っているかと思っているのですが、全くわかりません。
94
+
95
+ どなたかわかる方がいらっしゃいましたらご教授ください。
96
+
97
+
98
+
99
+
100
+
101
+
102
+
1
103
  /sample_app/app/controllers/users_controller.rb
2
104
 
3
105
  ```ここに言語を入力
@@ -157,3 +259,61 @@
157
259
  end
158
260
 
159
261
  ```
262
+
263
+
264
+
265
+
266
+
267
+ /sample_app/app/views/users/index.html.erb
268
+
269
+ ```ここに言語を入力
270
+
271
+ <% provide(:title, 'All users') %>
272
+
273
+ <h1>All users</h1>
274
+
275
+
276
+
277
+ <ul class="users">
278
+
279
+ <% @users.each do |user| %>
280
+
281
+ <li>
282
+
283
+ <%= gravatar_for user, size: 50 %>
284
+
285
+ <%= link_to user.name, user %>
286
+
287
+ </li>
288
+
289
+ <% end %>
290
+
291
+ </ul>
292
+
293
+ ```
294
+
295
+
296
+
297
+ /sample_app/app/helpers/users_helper.rb
298
+
299
+ ```ここに言語を入力
300
+
301
+ module UsersHelper
302
+
303
+
304
+
305
+ # 渡されたユーザーのGravatar画像を返す
306
+
307
+ def gravatar_for(user, size: 80)
308
+
309
+ gravatar_id = Digest::MD5::hexdigest(user.email.downcase)
310
+
311
+ gravatar_url = "https://secure.gravatar.com/avatar/#{gravatar_id}?s=#{size}"
312
+
313
+ image_tag(gravatar_url, alt: user.name, class: "gravatar")
314
+
315
+ end
316
+
317
+ end
318
+
319
+ ```