前提・実現したいこと
Ruby on Rails初心者です。
学習の一貫として勤怠管理アプリを作っています。
現在時刻を取得し、time型カラムへ時刻を保存するためcreateアクションの設定とストロングパラメータの設定を行いました。
Ruby
1def create 2 @time_card = Time.current 3 @time_card = Timecard.create(timecard_params) 4 if @time_card.save 5 redirect_to root_path 6 else 7 render :index 8 end 9 end 10 11 private 12 def timecard_params 13 params.permit(:start_time, :end_time).merge(user_id: current_user.id) 14 end
Ruby
1= form_with(url:"/worktimes", local: true, class: "btn_frame") do |f| 2 =f.submit "出勤", id: "start-btn" 3 =f.submit "退勤", id: "end-btn"
追記(データベース)
Ruby
1class CreateTimecards < ActiveRecord::Migration[6.0] 2 def change 3 create_table :timecards do |t| 4 t.time :start_time 5 t.time :end_time 6 t.references :user, index: true, foreign_key: true 7 end 8 end 9end 10
発生している問題・エラーメッセージ
ビューには出勤ボタンと退勤ボタンがそれぞれあり、出勤ボタンを押すとstart_timeへ、退勤ボタンを押すとend_timeへ保存されるようにしたいのですが、上手くいきません。
試したこと
createアクションにbinding.pryをかけ、paramsを調べたところ、当然、中身がuser_idのみになっており、start_timeとend_timeは存在しませんでした。ここからの対処方法が分からず、何方かご教示頂けますと幸いです。
回答3件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/08/25 09:55
2020/08/26 02:22