質問編集履歴

1

試したことの追加

2021/01/26 00:18

投稿

msickpaler
msickpaler

スコア14

test CHANGED
File without changes
test CHANGED
@@ -82,6 +82,24 @@
82
82
 
83
83
  end
84
84
 
85
+
86
+
87
+ def get_time
88
+
89
+ time = Time.zone.now
90
+
91
+ hour = time.hour
92
+
93
+ min = time.min
94
+
95
+ min < 30 ? hour : hour += 0.5
96
+
97
+ hour
98
+
99
+ end
100
+
101
+
102
+
85
103
  def user_check(id, request)
86
104
 
87
105
  user = User.find(id)
@@ -256,6 +274,64 @@
256
274
 
257
275
 
258
276
 
277
+ consoleにて、以下を試しました。
278
+
279
+
280
+
281
+ ```
282
+
283
+ a = ApplicationController.new # application_controllerのインスタンスを作成
284
+
285
+ a.get_time # インスタンスメソッドのget_timeを呼び出し
286
+
287
+ ```
288
+
289
+ するとBaseから継承した場合、
290
+
291
+
292
+
293
+ ```
294
+
295
+ [4] pry(main)> a = ApplicationController.new
296
+
297
+ => #<ApplicationController:0x0000aaaaf7bdbcb0
298
+
299
+ @_action_has_layout=true,
300
+
301
+ @_request=nil,
302
+
303
+ @_response=nil,
304
+
305
+ @_routes=nil,
306
+
307
+ @rendered_format=nil>
308
+
309
+ [5] pry(main)> a.get_time
310
+
311
+ => 18
312
+
313
+ ```
314
+
315
+ と、うまく動作するのに対して、APIから継承した場合、
316
+
317
+
318
+
319
+ ```
320
+
321
+ [2] pry(main)> a = ApplicationController.new
322
+
323
+ => #<ApplicationController:0x0000aaab16159110 @_request=nil, @_response=nil, @_routes=nil>
324
+
325
+ [4] pry(main)> a.get_time
326
+
327
+ NoMethodError: undefined method `get_time' for #<ApplicationController:0x0000aaab16159110>
328
+
329
+ ```
330
+
331
+ となりました。
332
+
333
+
334
+
259
335
  ### 補足情報(FW/ツールのバージョンなど)
260
336
 
261
337