Yêu cầu thg 7 17, 2023 7:41 SA 83 0 1
  • 83 0 1
0

Upload File CarrierWave

Chia sẻ
  • 83 0 1

Xin chào mọi người . Em đang sử dụng gem carrier wave để upload img .Thì em hiện tại đang bị lỗi

**undefined method `map' for 127:Integer Did you mean? tap

Hint: map is being called on a Integer object, which might not be the type of object you were expecting.**

** model** image.png Nếu để model image.png thì sẽ lỗi : - no implicit conversion of nil into String

Controller : image.png

View : <%= f.file_field :images , multiple: true, name: "images[img_link][]" %>

Param params.require(:menu).permit( images_attributes: [:id, :menu_id, :img_link] )

Avatar Hoàng Đức Quân @devil_boom_129
thg 7 18, 2023 1:42 SA

bạn có dùng method map ở đâu không?

thg 7 18, 2023 1:53 SA

@devil_boom_129 Phần create trong controller em k có sử dụng phương thức map .

1 CÂU TRẢ LỜI


Đã trả lời thg 7 27, 2023 2:26 SA
Đã được chấp nhận
+1

Theo mình thì bạn không cần để images ở table riêng mà có thể đặt nó là 1 attribute của Menu và ở model menu có thể setup như sau đối với 1 hình:

class Menu < ApplicationRecord
      mount_uploader   :image, ImageUploader
end

Còn nếu bạn đang muốn 1 menu có nhiều hình thì tham khảo thêm ở đây nhé: https://github.com/carrierwaveuploader/carrierwave#:~:text=Multiple file uploads

Chia sẻ
thg 7 28, 2023 1:51 SA

Mình cảm ơn bạn , để mình nghiên cứu link git hub mà bạn gửi

Viblo
Hãy đăng ký một tài khoản Viblo để nhận được nhiều bài viết thú vị hơn.
Đăng kí