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

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

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

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

保存

保存(save)とは、特定のファイルを、ハードディスク等の外部記憶装置に記録する行為を指します。

Q&A

解決済

2回答

1384閲覧

Rails CarrierWaveでimageの保存ができない

BKBKB

総合スコア8

Ruby on Rails

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

保存

保存(save)とは、特定のファイルを、ハードディスク等の外部記憶装置に記録する行為を指します。

0グッド

0クリップ

投稿2020/07/20 10:19

編集2020/07/20 10:27

実現したいこと
carrierwaveを用いて画像の保存を行いたいです。
昨日までは保存できていましたが、コントローラーのコードを修正したら保存できなくなってしまいました。

エラー内容
下記ターミナルにて、
2行目の"image"=>以下の通り、データは送れております。
しかし、作成したインスタンスdocument_createを確認すると(4行目)、image: nilとなっており、保存ができません。

ターミナル

[1] pry(#<SearchesController>)> params => <ActionController::Parameters {"utf8"=>"✓", "authenticity_token"=>"UAU5f/zVRMEY/Ue78en0lWD5Da9JQIKBi2DFIAYpYDpnSuBi3vaC04xkm4y+iV/abWAQIh0xWGBM1FF1vSefVw==", "company"=><ActionController::Parameters {"name"=>"株式会社よしだ薬品工業", "office"=>"名古屋"} permitted: false>, "item"=><ActionController::Parameters {"name"=>"炭酸ナトリウム水和物", "code"=>"2005"} permitted: false>, "document"=><ActionController::Parameters {"date"=>"20200201", "author"=>"田中", "image"=>#<ActionDispatch::Http::UploadedFile:0x00007f8288820e80 @tempfile=#<Tempfile:/var/folders/v5/wmbxdx4s1ds7sb8d5ybqym340000gn/T/RackMultipart20200720-7667-1jzaz44.pdf>, @original_filename="NS73.pdf", @content_type="application/pdf", @headers="Content-Disposition: form-data; name=\"document[image]\"; filename=\"NS73.pdf\"\r\nContent-Type: application/pdf\r\n">} permitted: false>, "commit"=>" 登録 ", "controller"=>"searches", "action"=>"create"} permitted: false> [2] pry(#<SearchesController>)> document_create => #<Document:0x00007f8287a3b0e0 id: nil, date: 20200201, author: "田中", image: nil, company_id: 96, item_id: 56, created_at: nil, updated_at: nil, user_id: 1>

ストロングパラメータ

def document_params params.require(:document).permit(:date, :author, :image).merge(company_id: @company_id, item_id: @item_id, user_id: current_user.id) end

new.html.erb

<div class="form"> <div class="search_new_head"> <div class="search_new_home"> <%= link_to "", searches_path(current_user), class: "fas fa-home" %> </div> 納入仕様書登録 </div> <div class="notifications"> <% flash.each do |key, value| %> <%= content_tag(:div, value, class: key) %> <% end %> </div> <div class="search_new_content"> <%= form_for @company, html: { multipart: true }, url: searches_path, local: true do |f| %> <div class="search_new_content__company"> <div class="search_new_content__element"> 会社名<br> <%= f.text_field :name %> </div> <div class="search_new_content__element"> 事業所<br> <%= f.text_field :office %> </div> </div> <%= fields_for @item do |c| %> <div class="search_new_content__item"> <div class="search_new_content__element"> 製品名<br> <%= c.text_field :name %> </div> <div class="search_new_content__element"> コード<br> <%= c.text_field :code %> </div> </div> <%= fields_for @document do |d| %> <div class="search_new_content__document"> <div class="search_new_content__element"> 締結日(例 20200101)<br> <%= d.text_field :date %> </div> <div class="search_new_content__element"> 投稿者<br> <%= d.text_field :author %> </div> <div class="search_new_content__element"> 納入仕様書<br> <%= d.file_field :image %> </div> </div> <div class="search_new_content__element"> <br> <%= f.submit " 登録 "%> </div> <% end %> <% end %> <% end %> </div> </div>

長時間調べましたが、私の方では見当がつきませんでした。
何か原因となることが分かる方おられますでしょうか?
恐れ入りますが、お力をお貸しいただけますよう、お願いいたします。

Ruby 2.5.1
Rail 5.0.7.2

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

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

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

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

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

guest

回答2

0

自己解決

モデルの記載ミスでした。

投稿2020/07/21 11:20

BKBKB

総合スコア8

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

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

0

コントローラーのコードを修正 の前後を確認しましょう。
そこに答えがあります。

投稿2020/07/20 13:41

winterboum

総合スコア23347

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問