初めまして。
エンジニアとして働き始めてからまだ半年も経っていない新人です。
説明不足や言葉の使い方があっているかわかりませんが
何卒よろしくお願い致します。
前提・実現したいこと
以下の環境でフリマサイトを作成しておりました。
開発環境:Cloud9
APPサーバ:Puma
Ruby 2.4.0 Rails 5.1.6
Cloud9では操作上異常はありませんでした。
それを今回以下の環境にデプロイしました。
サーバ:AWS EC2
Webサーバ:Nginx
APPサーバ:unicorn
Ruby 2.4.0 Rails 5.2.1
すると、商品の出品ができなくなってしまいました。
発生している問題・エラーメッセージ
エラーメッセージは発生していないのですが、
どうも@product.saveができていないようです。
---以下がcontrollerに記載している内容です。---
def create
パラメータ受け取り
@product = Product.new(product_params)
upload_file = params[:product][:image1]
投稿画像がない場合
if upload_file.present?
画像のファイル名取得
upload_file_name1 = upload_file.original_filename
output_dir = Rails.root.join('public', 'images')
output_path = output_dir + upload_file_name1
File.open(output_path, 'w+b') do |f|
f.write(upload_file.read)
end
@product.image1=upload_file_name1
end
データベースに保存
@product.status = 0
if @product.save
成功
flash[:success] = '出品に成功しました'
redirect_to root_path and return
else
失敗
flash[:danger] = '出品に失敗しました'
redirect_to new_product_path and return
end
end
出品を実行すると、'出品に失敗しました'と出てきてしまいます。
試したこと
saveメソッドがうまく機能してくれてないのかなと思ったのですが、
ユーザー登録ページのsaveはうまく機能しています。
データベースのlogを確認しても問題はなさそうで、
保存だけができていないようです。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/09/26 11:48