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

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

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

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

Ruby on Rails 4

Ruby on Rails4はRubyによって書かれたオープンソースのウェブフレームワークです。 Ruby on Railsは「設定より規約」の原則に従っており、効率的に作業を行うために再開発を行う必要をなくしてくれます。

受付中

carrierwaveで画像アップロードで保存は成功するが、imageが入らず困ってます。

qaz3330
qaz3330

総合スコア113

Ruby on Rails

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

Ruby on Rails 4

Ruby on Rails4はRubyによって書かれたオープンソースのウェブフレームワークです。 Ruby on Railsは「設定より規約」の原則に従っており、効率的に作業を行うために再開発を行う必要をなくしてくれます。

1回答

0評価

0クリップ

3500閲覧

投稿2016/01/17 10:19

rails4
にて
carrierwaveで画像アップロードの機能を実装しております。

しかし、表題の通り、画像アップロードで保存は成功するが、imageが入らず困ってます。

経緯と、当該箇所のソースを記述しました。
ご指摘頂けますと幸いです。

view

<%= form_for @member, url: members_path do |f| %> <%= f.fields_for :profile_images do |ff| %> <%= ff.file_field :image %> <% end %> <% end %>

model

class ProfileImage < ActiveRecord::Base belongs_to :member mount_uploader :image, Admin::PhotosPathUploader end

controller

def new @member = Member.new 2.times { @member.profile_images.build } end def create @member = Member.new(member_params) @member.save! end def member_params params.require(:member).permit(profile_images_attributes: [:image]) end

controllerの
member_paramsの所でbinding.pryをしてみると

"profile_images_attributes"=> {"0"=> {"image"=> #<ActionDispatch::Http::UploadedFile:0x007fda51266cf8 @content_type="image/png", @headers= "Content-Disposition: form-data; name=\"member[profile_images_attributes][0][image]\"; filename=\"hoge.png\"\r\nContent-Type: image/png\r\n", @original_filename="hoge.png", @tempfile= #<File:/var/folders/ct/7htplkvn1p77skk40j131s8r0000gq/T/RackMultipart20160117-18650-1hzsjvr.png>>, "id"=>"15"}},

となっており、ファイル自体はアップロードしている気がします。

エラーが起こるわけでもなく、ただ、ProfileImageにimageが保存されておりません。

ちなみに、controllerの
member_paramsの中身

"profile_images_attributes"=> {"0"=>{}, "1"=>{}}

member_paramsの中にimageが入るはずなのですが、
その原因がわからず困っております。

何卒宜しくお願いします。

良い質問の評価を上げる

以下のような質問は評価を上げましょう

  • 質問内容が明確
  • 自分も答えを知りたい
  • 質問者以外のユーザにも役立つ

評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

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

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

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

teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

  • プログラミングに関係のない質問
  • やってほしいことだけを記載した丸投げの質問
  • 問題・課題が含まれていない質問
  • 意図的に内容が抹消された質問
  • 過去に投稿した質問と同じ内容の質問
  • 広告と受け取られるような投稿

評価を下げると、トップページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

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

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

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

ただいまの回答率
87.20%

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

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

質問する

関連した質問

同じタグがついた質問を見る

Ruby on Rails

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

Ruby on Rails 4

Ruby on Rails4はRubyによって書かれたオープンソースのウェブフレームワークです。 Ruby on Railsは「設定より規約」の原則に従っており、効率的に作業を行うために再開発を行う必要をなくしてくれます。