2015-04-05 5 views
1

Я создаю сайт для фотографии для друга, и она хочет иметь возможность загружать, редактировать и удалять изображения. Все нормально на localhost, но я заметил, что когда я редактирую изображение, он меняет позицию и становится последним. Кто-нибудь знает, почему это происходит или может сказать мне, как я могу сортировать изображения с даты их создания?Rails: позиция смены изображения после обновления

index.html.erb:

<section class='container'> 
    <article id='gallery'> 
    <% PreviewPicture.all.each do |preview_picture| %> 
     <a class="fancybox" rel="group" href="<%= preview_picture.picture.image.url(:original)%>" ><%= image_tag preview_picture.image.url(:original), :class => 'grayscale' %></a> 
     <% if user_signed_in? %> 
      <%= link_to "Delete #{preview_picture.id}", preview_picture_path(:id => preview_picture.id), method: :delete %> 
      <%= link_to "Edit #{preview_picture.id}", edit_preview_picture_path(:id => preview_picture.id) %> 
     <% end %> 
    <% end %> 
    </article> 
</section> 

<% if user_signed_in? %> 
    <%= link_to "Add Picture", new_preview_picture_path, :class => "add_preview_picture" %> 
<% end %> 

gallery.css:

section.container { 
    margin-top: 100px; 
    text-align: center; 
    width: 69%; 
} 

img.grayscale{ 
    margin: 1.5px 0px; 
    filter: grayscale(100%); 
    -webkit-filter: grayscale(100%); /* For Webkit browsers */ 
    filter: gray; /* For IE 6 - 9 */ 
} 

img.grayscale:hover{ 
    filter: grayscale(0%); 
    -webkit-filter: grayscale(0%); 
    filter: none; 
} 

ответ

0

Вы хотите, чтобы создать область или метод класса на PreviewPicture модели этого сорта фотографии по дате создаются или обновляются.

class PreviewPicture < ActiveRecord::Base 
    def self.by_date 
     order(created_at: :desc) // or order(updated_at: :desc) 
    end 
end 

Затем вы можете использовать его как это:

PreviewPicture.by_date.each 

Это хорошая практика, чтобы установить это в контроллере, так и в соответствующем действии PreviewPictureController ваш взгляд в:

@preview_pictures = PreviewPicture.by_date 

А потом перебирать через переменную экземпляра @preview_pictures на ваш взгляд.

+0

Не могли бы вы объяснить нижний предел, пожалуйста? – phillyslick

+1

Это был не я, который поставил нижний план. Я только что видел ваш ответ! Это выглядит хорошо, я собираюсь попробовать. Большое спасибо :) – ellen

+1

Спасибо! что решила моя проблема :) – ellen

Смежные вопросы