Итак, я реализовал функцию, которая позволяет пользователям устанавливать фотографии профиля по умолчанию и фотографии обложки фотоальбома по умолчанию.
Выполнены эти функции сейчас:
В моей базе данных есть следующие таблицы:
Пользователь (и) (имеет один профиль, имеет много фотоальбомов)
Профили (принадлежит пользователю) содержит photo_id
Фотоальбом (ы) (принадлежит пользователю, имеет много фотографий) содержит photo_id
Фото (ы) (принадлежит фотоальбому)
Отображение фотографии по умолчанию для пользователей прямо.
У меня проблемы с отображением фотографии альбома по умолчанию для пользователей.
Вот так я могу отобразить фотографию профиля пользователя по умолчанию:
UsersController:
default_profile_photo_id = current_user.profile.photo_id
@default_photo = Photo.find(default_profile_photo_id)
Пользователи видят шаблон шоу:
<%= link_to image_tag(@default_photo.image, :width =>"200"), @user.username %>
В настоящее время для фотографий по умолчанию для фотоальбомов я показываю первое фото внутри этого фотоальбома:
<% for photo_album in @photoalbums %>
<%= link_to photo_album.album_title, photo_album %>
<%= link_to image_tag(photo_album.photos.first.image, :width =>"100"), photo_album %>
<%= link_to "Edit Album", edit_photo_album_path(photo_album) %>
<%= photo_album.photos.size %>
<% end %>
Связанное действие контроллера:
def index
@photoalbums = PhotoAlbum.find_all_by_user_id(current_user.id)
end
Что мне нужно сделать, так это во время цикла for вытянуть строку из таблицы фотографий с идентификатором, совпадающим с идентификатором photo_id фотоальбома, который в данный момент находится в цикле, чтобы на моем шаблоне индекса я мог извлечь изображение из соответствующий ряд фотографий и отобразить его.
Я пробовал бесконечные решения, но ни одно из них не работает ..
Мне нужна помощь опытного программиста.
С уважением