我安装了carrierwave,用户可以上传照片。如何设置让用户不必上传头像文件,而是可以从他们上传的照片中选择哪一张作为他们的头像?例如,当您在 Facebook 上时,单击您的一张照片,单击“选项”链接,它会显示“制作个人资料图片”。然后,该图像将成为您的头像,或在整个 Facebook 中使用的图片。我正在寻找同样的东西。
画廊控制器:
def index
@galleries = Gallery.all
end
def show
@gallery = Gallery.find(id_params)
end
def new
@gallery = Gallery.new
end
def create
@gallery = Gallery.new(gallery_params)
if @gallery.save
flash[:notice] = "Created gallery."
redirect_to @gallery
else
render :action => 'new'
end
end
def edit
@gallery = Gallery.find(id_params)
end
def update
@gallery = Gallery.find(id_params)
if @gallery.update_attributes(gallery_params)
flash[:notice] = "Updated gallery."
redirect_to gallery_url
else
render :action => 'edit'
end
end
def destroy
@gallery = Gallery.find(id_params)
@gallery.destroy
flash[:notice] = "Gallery deleted."
redirect_to galleries_url
end
private
def gallery_params
params.require(:user).permit(:name)
end
def id_params
params.require(:id).permit(:name)
end
end
照片控制器:
def new
@photo = Photo.new
end
def create
@photo = Photo.new(params[:photo])
@photo.user = current_user
if @photo.save
flash[:notice] = "Successfully created photos."
redirect_to :back
else
render :action => 'new'
end
end
def edit
@photo = Photo.find(params[:id])
end
def update
@photo = Photo.find(params[:id])
if @photo.update_attributes(paramas[:photo])
flash[:notice] = "Successfully updated photo."
redirect_to @photo.gallery
else
render :action => 'edit'
end
end
def destroy
@photo = Photo.find(params[:id])
@photo.destroy
flash[:notice] = "Successfully destroyed photo."
redirect_to @photo.gallery
end
end