如何避免嵌套迭代中的重复条目

发布于 2024-12-06 14:24:19 字数 483 浏览 1 评论 0原文

我该如何重写以避免重复条目?

images.each do |img|
  thumbs.each do |th|
    html << link_to(image_tag("#{th.url}"), "#{img.url}")
  end
end

我想将缩略图 th.url 包装到原始图像 img.url

up:
的链接中 我正在使用 fog gem 来获取 images来自 S3 的拇指
它们是具有不同前缀的文件: storage.directories.get(bucket, :prefix => "thumbs").files

How can I rewrite this to avoid duplicate entries?

images.each do |img|
  thumbs.each do |th|
    html << link_to(image_tag("#{th.url}"), "#{img.url}")
  end
end

I want to wrap thumbnail images th.url into links to original images img.url

up:
I'm using a fog gem to get images and thumbs from S3.
They're files with different prefixes:
storage.directories.get(bucket, :prefix => "thumbs").files

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

落叶缤纷 2024-12-13 14:24:19

为什么不以某种方式关联您的图像和缩略图呢?

因此,如果您的图像名为 image_name.jpg,则可以将缩略图命名为 thumbs/image_name.jpg

如果您的名称未连接,那么为什么不在您的应用程序中将它们关联起来,以便使用图像和缩略图名称的关联数组呢?

my_images = [ "image_1.jpg"=>"aflafffff_thumb.jpg", "image_2.jpg"->"zofofroro_thumb.jpg" ] 

这两种方法都可以让您找到每个图像相应的缩略图。

Why not relate your images and thumbnails in some way?

So if your image is called image_name.jpg you could have your thumbnail called thumbs/image_name.jpg.

If your names are unconnected, then why not just associate them in your application so you use an associative array of images and thumbnail names?

my_images = [ "image_1.jpg"=>"aflafffff_thumb.jpg", "image_2.jpg"->"zofofroro_thumb.jpg" ] 

Either of those ways enable you to just find the corresponding thumbnail for each image.

凉月流沐 2024-12-13 14:24:19

您正在循环访问两个集合(图像和拇指) - 因此会出现重复项。猜测您的图像和拇指对象以某种方式链接...

例如拇指可用做类似 image.thumb 的

images.each do |image|
  html << link_to(image_tag(image.thumb.url), image.url)
end

事情通过仅迭代图像集合,您将不会得到重复项。

You're looping through two collections (images and thumbs) - hence the duplicates. Guessing your image and thumb objects are linked somehow...

e.g. thumbs available doing something like image.thumb

images.each do |image|
  html << link_to(image_tag(image.thumb.url), image.url)
end

By only iterating through the images collection you won't get duplicates.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文