##やりたいこと
find_by(id)で値を取得し、インスタンスメソッドで出力したい
## 問題
find_by(id)が存在しないことになっている
nilが帰ってくる
##コード
ターミナル irb(main):001:0> upload = Upload.find_by(id: 5) Upload Load (0.4ms) SELECT "uploads".* FROM "uploads" WHERE "uploads"."id" = $1 LIMIT $2 [["id", 5], ["LIMIT", 1]] => nil
schema.rb create_table "users", force: :cascade do |t| t.string "name" t.string "email" t.string "string" t.datetime "created_at", null: false t.datetime "updated_at", null: false t.string "password" end end
モデル class Upload < ApplicationRecord mount_uploader :image, ImagesUploader validates :title, {presence: true} validates :body, {presence: true} validates :user_id, {presence: true} def user return User.find_by(id: self.user_id) end end
回答1件
あなたの回答
tips
プレビュー