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

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

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

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

Q&A

1回答

316閲覧

新規作成を押すとエラーが出てしまう。

diego

総合スコア4

Ruby on Rails

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

0グッド

0クリップ

投稿2022/09/12 08:07

scaffoldコマンドを使用したのですが、新規作成を押した際下記のようなエラーが出てしまいます。
自力では解決できなかったのんでお願い致します。

エラーメッセージ

NameError in ScheduleMemosController#create uninitialized constant ScheduleMemo::Title Extracted source (around line #27): 26 respond_to do |format| 27 if @schedule_memo.save 28 format.html { redirect_to schedule_memo_url(@schedule_memo), notice: "Schedule memo was successfully created." } 29 format.json { render :show, status: :created, location: @schedule_memo } 30 else ###

ソースコード

ruby

1class ScheduleMemosController < ApplicationController 2 before_action :set_schedule_memo, only: %i[ show edit update destroy ] 3 4 # GET /schedule_memos or /schedule_memos.json 5 def index 6 @schedule_memos = ScheduleMemo.all 7 end 8 9 # GET /schedule_memos/1 or /schedule_memos/1.json 10 def show 11 end 12 13 # GET /schedule_memos/new 14 def new 15 @schedule_memo = ScheduleMemo.new 16 end 17 18 # GET /schedule_memos/1/edit 19 def edit 20 end 21 22 # POST /schedule_memos or /schedule_memos.json 23 def create 24 @schedule_memo = ScheduleMemo.new(schedule_memo_params) 25 26 respond_to do |format| 27 if @schedule_memo.save 28 format.html { redirect_to schedule_memo_url(@schedule_memo), notice: "Schedule memo was successfully created." } 29 format.json { render :show, status: :created, location: @schedule_memo } 30 else 31 format.html { render :new, status: :unprocessable_entity } 32 format.json { render json: @schedule_memo.errors, status: :unprocessable_entity } 33 end 34 end 35 end 36 37 # PATCH/PUT /schedule_memos/1 or /schedule_memos/1.json 38 def update 39 respond_to do |format| 40 if @schedule_memo.update(schedule_memo_params) 41 format.html { redirect_to schedule_memo_url(@schedule_memo), notice: "Schedule memo was successfully updated." } 42 format.json { render :show, status: :ok, location: @schedule_memo } 43 else 44 format.html { render :edit, status: :unprocessable_entity } 45 format.json { render json: @schedule_memo.errors, status: :unprocessable_entity } 46 end 47 end 48 end 49 50 # DELETE /schedule_memos/1 or /schedule_memos/1.json 51 def destroy 52 @schedule_memo.destroy 53 54 respond_to do |format| 55 format.html { redirect_to schedule_memos_url, notice: "Schedule memo was successfully destroyed." } 56 format.json { head :no_content } 57 end 58 end 59 60 private 61 # Use callbacks to share common setup or constraints between actions. 62 def set_schedule_memo 63 @schedule_memo = ScheduleMemo.find(params[:id]) 64 end 65 66 # Only allow a list of trusted parameters through. 67 def schedule_memo_params 68 params.require(:schedule_memo).permit(:title_id, :start, :fin, :all, :memo) 69 end 70end 71

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

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

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

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

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

kazto

2022/09/13 00:35

model/ScheduleMemo.rb というモデルのコードがあるはずなので、それを掲載してください。
diego

2022/09/13 09:12

class ScheduleMemo < ApplicationRecord belongs_to :title end このようになっています。 どういったように改善すればよろしいでしょうか?
kazto

2022/09/13 09:31

同様に、model/Title.rb はありますか? たぶん存在していないはず。
diego

2022/09/13 09:36

ありませんでした。 modelの下に追加すればよろしいでしょうか?
guest

回答1

0

ruby

1class ScheduleMemo < ApplicationRecord 2 belongs_to :title 3end

この belongs_to はどういった目的で記載していますか?
なにか使い道を間違えている気がしています。

投稿2022/09/14 00:50

kazto

総合スコア7196

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

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

diego

2022/09/15 01:46

すみませんこの辺の理解が浅く、理解せずに使用していました。 どのように関連付けをすればよろしいでしょうか?
kazto

2022/09/15 03:13

belongs_to はモデル同士の関係性を記述するメソッドです。 https://railsguides.jp/association_basics.html しかし、どう記述するかは、モデルの設計がどのようになっているかに依存します。ScheduleMemo と Title がどのような関係なのかを教えていただけますか?
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

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

ただいまの回答率
85.50%

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

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

質問する

関連した質問