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

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

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

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

Q&A

0回答

379閲覧

DBにデータが保存されません

Naoto1

総合スコア12

Ruby on Rails 5

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

0グッド

0クリップ

投稿2020/05/17 13:25

編集2020/05/17 23:29

○解決したい事
mysqlのmaterialsテーブル、recipi_materialsテーブルにデータを保存したいです。
現在、recipisテーブルにはデータ保存がされておりますが、上記2つのテーブルには全くデータが反映されていない状態です。

recipis controller.rb

class RecipisController < ApplicationController def index @recipi = Recipi.all.order("DESC") end def new @recipi = Recipi.new @recipi.materials.build end def create @recipi = Recipi.new(recipi_params) @recipi.save redirect_to"/" end private def recipi_params params.require(:recipi).permit(:image, :title, :content, :content_image, materials_attributes: [:id, :materials, :quantity]).merge(user_id: current_user.id) end end

new.html.haml

= form_with model: @recipi, local:true do |f| .post %h1 レシピを投稿して下さい! .post_recipi .post_recipi-left .post_recipi-left_title .post_recipi-left_title-subject レシピのタイトル =f.text_field :title, placeholder:"タイトルを入力して下さい", class:"recipi__title" .post_recipi-image =f.label :content_image, class:"label_image" =f.file_field :content_image, class:"image_field" =f.hidden_field :image_cache .post_recipi-content =f.text_area :content .post_recipi-contents .recipi_items-main .recipi_items-main_subject 材料名を入力して下さい(豚バラ肉など) =f.text_field :materials, class:"recipi_items-materials",value:"" =f.text_field :materials, class:"recipi_items-materials",value:"" =f.text_field :materials, class:"recipi_items-materials",value:"" =f.text_field :materials, class:"recipi_items-materials",value:"" =f.text_field :materials, class:"recipi_items-materials",value:"" =f.text_field :materials, class:"recipi_items-materials",value:"" =f.text_field :materials, class:"recipi_items-materials",value:"" =f.text_field :materials, class:"recipi_items-materials",value:"" =f.text_field :materials, class:"recipi_items-materials",value:"" =f.text_field :materials, class:"recipi_items-materials",value:"" .recipi_items-quantity .recipi_items-quantity_subject 分量を入力して下さい(大さじ1、100gなど) =f.text_field :quantity, class:"recipi_items-quantity_content" =f.text_field :quantity, class:"recipi_items-quantity_content" =f.text_field :quantity, class:"recipi_items-quantity_content" =f.text_field :quantity, class:"recipi_items-quantity_content" =f.text_field :quantity, class:"recipi_items-quantity_content" =f.text_field :quantity, class:"recipi_items-quantity_content" =f.text_field :quantity, class:"recipi_items-quantity_content" =f.text_field :quantity, class:"recipi_items-quantity_content" =f.text_field :quantity, class:"recipi_items-quantity_content" =f.text_field :quantity, class:"recipi_items-quantity_content" .submit =f.submit :"送信"

materials.rb(モデル)

class Material < ApplicationRecord has_many :recipi_materials has_many :recipis, through: :recipi_materials end

recipi.rb(モデル)

class Recipi < ApplicationRecord belongs_to :user has_many :recipi_materials has_many :materials, through: :recipi_materials accepts_nested_attributes_for :materials mount_uploader :image, ImageUploader end

recipi_material.rb(モデル)

class RecipiMaterial < ApplicationRecord belongs_to :recipi belongs_to :material end

追記

その後、recipiモデル、materialモデルに、optional:trueを付属させてみましたが、状況に変化なしです。
初心者で、おかしな文法を使用しているかもしれませんが、何卒ご教授の程宜しくお願い致します。

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

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

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

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

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

guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだ回答がついていません

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

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

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

ただいまの回答率
85.35%

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

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

質問する

関連した質問