我已经遇到了几个小时的问题,并且用Google搜索自己毫无意义.
我有一个带有嵌入式文档的Mongoid模型,如下所示:
embeds_many :tags, :as => :taggable
Run Code Online (Sandbox Code Playgroud)
出于某种原因,尝试删除此文档似乎在控制台中工作,但文件在重新加载后返回.我尝试过以下方法:
model.tags.delete_all
model.tags.each do |tag|
tag.delete
end
model.tags.destroy_all
Run Code Online (Sandbox Code Playgroud)
完成上述所有操作后,我可以确认model.tags返回一个空数组.然后为了安全起见,我甚至打电话给model.save.如果我重新加载模型,所有嵌入的标签都会返回.
使用Mongoid删除嵌入文档的正确方法是什么?
我已经在这一段时间了.使用这个RailsCast我已经能够修改它以使用CarrierWave - 至少在理论上.我试图允许用户裁剪他们的个人资料照片,然后使用CarrierWave将其上传到S3.到目前为止这是有效的:
所以,这是我得到的代码.这是模型:
attr_accessor :crop_x, :crop_y, :crop_w, :crop_h, :original_width, :original_height
attr_accessible :avatar, :remove_avatar
after_update :reprocess_avatar, :if => :cropping?
mount_uploader :avatar, ProfileBaseUploader
def cropping?
!crop_x.blank? && !crop_y.blank? && !crop_w.blank? && !crop_h.blank?
end
private
def reprocess_avatar
avatar.process!
avatar.recreate_versions!
end
Run Code Online (Sandbox Code Playgroud)
漂亮的锅炉板 - crop_x等属性是从裁剪视图中分配的.我已经确认这些正在传入并正确分配,并且调用了reprocess_avatar方法.
这是我的上传代码:
include CarrierWave::MiniMagick
include CarrierWaveDirect::Uploader
storage :fog
require 'guid'
process :cropper
process :store_best_geometry
version :tiny_thumb do
process :resize_to_limit => [50, 50]
end
version :thumb do
process :resize_to_limit => [200, 200]
end
version …Run Code Online (Sandbox Code Playgroud) 我最近一直在研究Pinterest网站的页面代码,以学习CSS中的一些设计技巧.我观察到的一件事是他们使用CSS样式设置每个图像的高度.这对我来说很奇怪,因为很明显它们都被调整大小以便具有192px的统一WIDTH.是否有设置高度而不是宽度的技术原因?
例:
<img src="http://media-cache-ec8.pinterest.com/upload/30962316158222159_nQdVRIXP_b.jpg" alt="Summer camp" class="PinImageImg" style="height: 163px;">
Run Code Online (Sandbox Code Playgroud)