我正在为公关公司做一个网站,他们有多个客户(称为客户)。这些客户中的每一个都有自己的图像库(称为cliente_photos)。我正在使用carrierwave和active_admin通过管理员上传。在active_admin中,我能够与客户端设置我希望新上传的图片与之相关。但根据我的观点,所有客户都会显示所有图片。我认为这是一个数组条件问题,但我不能让它工作。
我的索引视图如下所示:
<div class="image-grid mt-60">
<% Cliente.all.each do |client| %>
<% client.cliente_photos.each do |photo| %>
<div class="mb-5 pull-left">
<%= image_tag photo.imagem.url %>
</div>
<% end %>
<% end %>
</div>
当我尝试使用像:
这样的条件时`<div class="image-grid mt-60">
<% Cliente.all.each do |client| %>
<% client.cliente_photos.where("cliente_id = ?", params[:cliente_id]).each do |photo| %>
<div class="mb-5 pull-left">
<%= image_tag photo.imagem.url %>
</div>
<% end %>
<% end %>
</div>`
图像从所有客户端消失。
有什么想法吗?
答案 0 :(得分:1)
如果您从Cliente.all
开始,您应该期望所有客户端图片。如果那不是您想要的,为什么不过滤您 想要的那个呢?
<div class="image-grid mt-60">
<% client = Cliente.find(params[:cliente_id]) %>
<% client.cliente_photos.each do |photo| %>
<div class="mb-5 pull-left">
<%= image_tag photo.imagem.url %>
</div>
<% end %>
</div>