質問編集履歴

3

code追加attendances_controller.rb

2019/11/28 02:41

投稿

koh-s
koh-s

スコア9

test CHANGED
File without changes
test CHANGED
@@ -384,6 +384,50 @@
384
384
 
385
385
  ```
386
386
 
387
+ 【attendances_controller.rb】
388
+
389
+ ```ruby
390
+
391
+ UPDATE_ERROR_MSG = "勤怠登録に失敗しました。やり直してください。"
392
+
393
+
394
+
395
+ def update
396
+
397
+ @attendance = Attendance.find(params[:id])
398
+
399
+ if @attendance.started_at.nil?
400
+
401
+ if @attendance.update_attributes(started_at: Time.current.change(sec: 0))
402
+
403
+ flash[:info] = "おはようございます!"
404
+
405
+ else
406
+
407
+ flash[:danger] = UPDATE_ERROR_MSG
408
+
409
+ end
410
+
411
+ elsif @attendance.finished_at.nil?
412
+
413
+ if @attendance.update_attributes(finished_at: Time.current.change(sec: 0))
414
+
415
+ flash[:info] = "お疲れ様でした!"
416
+
417
+ else
418
+
419
+ flash[:danger] = UPDATE_ERROR_MSG
420
+
421
+ end
422
+
423
+ end
424
+
425
+ redirect_to @user
426
+
427
+ end
428
+
429
+ ```
430
+
387
431
  ### 試したこと
388
432
 
389
433
 

2

【schema.rb】コード追加

2019/11/28 02:41

投稿

koh-s
koh-s

スコア9

test CHANGED
File without changes
test CHANGED
@@ -306,6 +306,80 @@
306
306
 
307
307
  end
308
308
 
309
+ ```
310
+
311
+ 【schema.rb】
312
+
313
+ ```ruby
314
+
315
+ ActiveRecord::Schema.define(version: 20191118081810) do
316
+
317
+
318
+
319
+ create_table "attendances", force: :cascade do |t|
320
+
321
+ t.date "worked_on"
322
+
323
+ t.datetime "started_at"
324
+
325
+ t.datetime "finished_at"
326
+
327
+ t.string "note"
328
+
329
+ t.integer "user_id"
330
+
331
+ t.datetime "created_at", null: false
332
+
333
+ t.datetime "updated_at", null: false
334
+
335
+ t.index ["user_id"], name: "index_attendances_on_user_id"
336
+
337
+ end
338
+
339
+
340
+
341
+ create_table "users", force: :cascade do |t|
342
+
343
+ t.string "name"
344
+
345
+ t.string "email"
346
+
347
+ t.datetime "created_at", null: false
348
+
349
+ t.datetime "updated_at", null: false
350
+
351
+ t.string "password_digest"
352
+
353
+ t.string "remember_digest"
354
+
355
+ t.boolean "admin", default: false
356
+
357
+ t.string "affiliation"
358
+
359
+ t.datetime "basic_time", default: "2019-11-24 23:00:00"
360
+
361
+ t.datetime "work_time", default: "2019-11-24 22:30:00"
362
+
363
+ t.boolean "superior", default: false
364
+
365
+ t.integer "employee_number"
366
+
367
+ t.string "uid"
368
+
369
+ t.datetime "designated_work_start_time", default: "2019-11-25 00:00:00"
370
+
371
+ t.datetime "designated_work_end_time", default: "2019-11-25 09:00:00"
372
+
373
+ t.datetime "basic_work_time", default: "2019-11-24 23:00:00"
374
+
375
+ t.index ["email"], name: "index_users_on_email", unique: true
376
+
377
+ end
378
+
379
+
380
+
381
+ end
382
+
309
383
 
310
384
 
311
385
  ```

1

画像の追加

2019/11/27 17:17

投稿

koh-s
koh-s

スコア9

test CHANGED
File without changes
test CHANGED
@@ -1,12 +1,16 @@
1
1
  ### 前提・実現したいこと
2
2
 
3
-
3
+ ![イメージ説明](8b9413a50b97b5b36e7c1096136c95cc.png)
4
+
5
+ ![イメージ説明](9602b5ec5a6ca06cb0b26d048d64f202.png)
6
+
7
+ ![イメージ説明](0a6b916ed9e3d40fa147e72e7418eae0.png)
4
8
 
5
9
  【実現したいこと】
6
10
 
7
11
  ・usersテーブルとattendancesテーブルより各取り出したいデータを取得。
8
12
 
9
- ・出勤中のユーザーのみ表示。
13
+ ・出勤中のユーザー(ここではSample User)のみ表示。
10
14
 
11
15
  【試したこと】
12
16