【发布时间】:2018-08-27 10:27:22
【问题描述】:
我使用 gem “回形针”,但我不知道如何正确使用它。一直都有一些错误。
[ab5aaf0e-3255-49d7-bc59-233aced581f3] NoMethodError(nil:NilClass 的未定义方法“+”):
[ab5aaf0e-3255-49d7-bc59-233aced581f3] app/models/photo.rb:11:in 'as_json'
[ab5aaf0e-3255-49d7-bc59-233aced581f3] app/controllers/photos_controller.rb:8:in `index'
我做错了什么?
控制器:
class PhotosController < ApplicationController
def index
@photos = Photo.all
render json: @photos
end
private
def photo_params
params.permit(
:users_id,
:photo
)
end
end
型号:
class Photo < ActiveRecord::Base
self.primary_key = "users_id"
has_attached_file :photo, styles: {default: "150x150>"}, default_url: "/images/empty_photo.png", preserve_files: false
validates_attachment_content_type :photo, content_type: ["image/jpg", "image/jpeg", "image/png"]
def as_json(options={})
super(options).merge({users_id: users_id,
photo: {
default_url: ENV['root_url'] + photo.url(:default),
original_url: ENV['root_url']+photo.url,
},
})
end
def image_from_url(url)
self.photo = URI.parse(url)
end
def reprocess_image
photo.reprocess!
end
end
【问题讨论】: