动态定义回形针样式大小

时间:2012-04-23 12:40:23

标签: ruby-on-rails-3.1 paperclip

我有一个用户选择模板的应用程序。在此模板上,用户可以上传图像。

我使用paperclip上传图片。

每个模板都有不同的图像尺寸。

是否可以设置图像样式=>在paperclip中动态地'widthxheight'?

我想要这个功能,因为如果用户决定更改模板,那么他们不必再次上传照片,只需裁剪“原始”。

感谢您的帮助。

我会尽力清除这一点。

用户上传页面标题的图像。样式可以称为“标题”,尺寸应该是标题空间的尺寸,比如说“400x600”

现在,用户可以查看他们在图库中上传的图片。他们想为他们的页面选择一个图像,但这次是“侧边栏”,其尺寸为“300x100”。我不想让他们再次上传相同的图像。我想创建一个名为“sidebar”的新样式,尺寸为“300x100”。我也不想删除“标题”样式或调整它的大小。

如何使用回形针执行此操作?

1 个答案:

答案 0 :(得分:6)

如果我理解你有类似的东西:Paperclip change size

此外:

attr_accessor :size

...
self.dimensions = self.size.split("x")

控制器:

def create
  ...
  @file.size = params[:size] # OR Simply include such field in form
  ...
end

示例:

型号:

class File
  has_attached_file :upload
  attr_accessor :size
  before_save :extract_dimensions
  serialize :dimensions
  ...
  def extract_dimensions
    ...
    self.dimensions = self.size.split("x")
  end
end

形式:

<form action="some link">
  ...
  <label>Size: </label><select name="file_size">
    <option value="100x200">Large</option>
    ...
  </select>
</form>