【发布时间】:2013-05-16 13:50:51
【问题描述】:
我正在尝试为 Paperclip 实现 Jcrop,我已经完成了 99%。我能够裁剪图像并存储它。问题是,在图像被裁剪并存储后,我再次使用最近裁剪的图像进行裁剪操作。所以它要求我裁剪裁剪的图像。我不知道如何摆脱它。我想在图像被裁剪后转到 user_path 而不是再次裁剪。这是我的更新操作中的代码:
def update
@user.update_attributes(params[:user])
if @user.avatar_file_name.nil?
redirect_to :back
else
if params[:user].blank?
redirect_to user_path(@user)
else
render :action => 'crop'
@user.avatar.reprocess! if :cropping?
end
end
end
如果我有这个,那么图像将不会裁剪。它存储为原始图像,我被重定向到 user_path:
def update
@user.update_attributes(params[:user])
if @user.avatar_file_name.nil?
redirect_to :back
else
if params[:user][:avatar].blank?
redirect_to user_path(@user)
else
render :action => 'crop'
@user.avatar.reprocess! if :cropping?
end
end
end
【问题讨论】:
-
你能发布你的裁剪操作吗?
-
好的,据我了解,您应该使用您的帖子的第二个版本。您总是会看到裁剪视图,因为由于某种原因,您的 params[:user][:avatar] 在裁剪后不会变为空白。按“裁剪”后,您能看到发布的内容吗?那里不应该有 params[:user][:avatar]。
-
好的。好吧:使用您帖子的第二部分,而不是您的第一部分。按下用户的保存按钮后查看请求的参数。您的代码需要一个 params[:user][:avatar]。有吗?
-
您上面的评论是用户裁剪图像之后的参数。 在渲染裁剪动作之前你得到什么参数?
-
你使用的是第一版还是第二版?
标签: ruby-on-rails ruby-on-rails-3 ruby-on-rails-3.2 paperclip jcrop