質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.46%
Ruby on Rails 6

Ruby on Rails 6は、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

Q&A

解決済

1回答

230閲覧

データベースに値を保存できるようにしたいです

sa10shi

総合スコア0

Ruby on Rails 6

Ruby on Rails 6は、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

0グッド

0クリップ

投稿2021/06/05 02:25

前提・実現したいこと

カレンダーアプリを作っています。
予定を記入し、カレンダーに表示させたいのですが、
データベースに保存ができなくて困っています。
カレンダー導入までは上手く行っていたのですが、deviseを導入と部分テンプレートで記述をまとめた後に保存できなくなりました。
ご教授いただければ幸いです。
よろしくお願いいたします。

該当のソースコード

rails

1class CreatePlans < ActiveRecord::Migration[6.0] 2 def change 3 create_table :plans do |t| 4 t.string :task 5 t.text :detail 6 t.text :memo 7 t.datetime :start_time 8 t.references :plan, foreign_key: true 9 t.timestamps 10 end 11 end 12end

rails

1Rails.application.routes.draw do 2 get 'user/index' 3 root to: 'plans#index' 4 devise_for :users 5 resources :plans 6 resources :users 7end

rails

1Rails.application.routes.draw do 2 get 'user/index' 3 root to: 'plans#index' 4 devise_for :users 5 resources :plans 6 resources :users 7end

rails

1<%= form_with(model: plan, local: true) do |form| %> 2 3 <legend class="mt-3">ルーティン</legend> 4 <div class="mb-3"> 5 <label for="disabledTextInput" class="form-label">タスク</label> 6 <%= form.text_field :task, class:"form-control", id:"disabledTextInput" %> 7 </div> 8 9 <div class="mb-3"> 10 <label for="disabledTextInput" class="form-label">目標</label> 11 <%= form.text_field :detail, class:"form-control", id:"disabledTextInput" %> 12 </div> 13 14 <div class="mb-3"> 15 <label for="disabledTextInput" class="form-label">メモ</label> 16 <%= form.text_field :memo, class:"form-control", id:"disabledTextInput" %> 17 </div> 18 19 <div> 20 <%= form.datetime_select :start_time %> 21 </div> 22 23 <div class="submit mt-3"> 24 <%= form.submit "登録" , class:"submit btn btn-primary mr-2" %> 25 </div> 26<% end %>

rails

1<div class="h4 ml-3 mt-2"> 2<%= l Date.today, format: :long %> 3</div> 4 5<%= render partial: "plan", locals: {plan: @plan} %>

rails

1class PlansController < ApplicationController 2 before_action :authenticate_user! 3 4 def index 5 @plans = Plan.all 6 end 7 8 def new 9 @plan = Plan.new 10 end 11 12 def create 13 plan = Plan.new(plan_params) 14 if @plan.save 15 redirect_to root_path 16 else 17 render :new 18 end 19 end 20 21 def destroy 22 plan = Plan.find(params[:id]) 23 plan.destroy 24 redirect_to root_path 25 end 26 27 def edit 28 @plan = Plan.find(params[:id]) 29 end 30 31 def update 32 plan = Plan.find(params[:id]) 33 plan.update(plan_params) 34 end 35 36 private 37 38 def plan_params 39 params.require(:plan).permit(:task, :detail, :memo, :start_time).merge(user_id: current_user.id) 40 end 41 42 43end

試したこと

createアクションでbinding.pryをしましたが、止まりませんでした。
newアクションでbinding.pryをして、paramsを確認しましたがデーターは送られているようでした。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

winterboum

2021/06/05 02:34

なぜsave出来ないのか、エラーを表示するようになっていないので手ががりが得られません、 一時的に、@plan.save! と ! 付きで実行してこの結果を載せてください 及び model Plan のcodeと
m.ts10806

2021/06/05 08:43

>止まりませんでした。 他の個所で同様にして止まるのであれば、そもそも通ってないと考えるべきでは。 デバッグは様々な角度からしてみてください。
sa10shi

2021/06/06 00:31 編集

ありがとうございます。 newではとまったので、paramsを確認してcreateできなかったのでビューを見直しました。 ビューの記述が誤っていたようです。 書き直してみると解決できました。 助かりました。
guest

回答1

0

自己解決

ありがとうございます。
newではとまったので、paramsを確認してcreateできなかったのでビューを見直しました。
ビューの記述が誤っていたようです。
書き直してみると解決できました。
助かりました。ありがとうございました。

投稿2021/06/06 00:37

sa10shi

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.46%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問