解決したいこと
各ユーザーが、自分のアプリのプロトタイプを投稿できるアプリを作成しています。
画像かタイトルをクリックしたら詳細ページに遷移するように表示できていますが、投稿した画像がずれて表示されてしまいます。
また、トップページに関しては、『プロトタイプ名』・『プロトタイプのキャッチコピー』・『投稿者名』の上部に画像を配置したいのですが、左側に画像が表示されてしまいました。
経緯としましては、トップページに関しては記述した当初はしっかり上部に画像が配置されていたのですが、画像かタイトルをクリックしたら詳細ページに遷移するようにshow.html.erbを記述したところ、このようになってしまいました。
実際の画面表示(詳細ページ)
実際の画面表示(トップページ)
表示させたい画面表示(詳細ページ)
表示させたい画面表示(トップページ)
show.html.erb
<main class="main"> <div class="inner"> <div class="prototype__wrapper"> <p class="prototype__hedding"> <%= "プロトタイプのタイトル"%> </p> <%= link_to "by #{@prototype.user.name}", root_path, class: :prototype__user %> <%# プロトタイプの投稿者とログインしているユーザーが同じであれば以下を表示する %> <div class="prototype__manage"> <%= link_to "編集する", root_path, class: :prototype__btn %> <%= link_to "削除する", root_path, class: :prototype__btn %> </div> <%# // プロトタイプの投稿者とログインしているユーザーが同じであれば上記を表示する %> <div class="prototype__image"> <span><%= image_tag(@prototype.image) %></span> </div> <div class="prototype__body"> <div class="prototype__detail"> <p class="detail__title">キャッチコピー</p> <p class="detail__message"> <%= @prototype.catch_copy %> </p> </div> <div class="prototype__detail"> <p class="detail__title">コンセプト</p> <p class="detail__message"> <%= @prototype.concept %> </p> </div> </div> <div class="prototype__comments"> <%# ログインしているユーザーには以下のコメント投稿フォームを表示する %> <%# <%= form_with local: true do |f|%> <div class="field"> <%# <%= f.label :hoge, "コメント" %><br /> <%# <%= f.text_field :hoge %> </div> <div class="actions"> <%# <%= f.submit "送信する", class: :form__btn %> </div> <%# <% end %> <%# // ログインしているユーザーには上記を表示する %> <ul class="comments_lists"> <%# 投稿に紐づくコメントを一覧する処理を記述する %> <li class="comments_list"> <%# <%= " コメントのテキスト "%> <%# <%= link_to "( ユーザー名 )", root_path, class: :comment_user %> </li> <%# // 投稿に紐づくコメントを一覧する処理を記述する %> </ul> </div> </div> </div> </main>
index.html.erb
<main class="main"> <div class="inner"> <% if user_signed_in? %> <div class="greeting"> <%="こんにちは、"%> <%= link_to "#{current_user.name}さん", root_path, class: :greeting__link%> </div> <% end %> <div class="card__wrapper"> <%= render partial: 'prototype', collection: @prototypes %> <%# 投稿機能実装後、部分テンプレートでプロトタイプ投稿一覧を表示する %> </div> </div> </main>
_prototype.html.erb
<div class="card"> <% if prototype.image.attached? %> <%= link_to image_tag(prototype.image), prototype_path(@prototypes.ids) %> <% end %> </div> <div class="card__body"> <%= link_to "#{prototype.title}", prototype_path(prototype.id), class: :card__title%> <p class="card__summary"> <%= "#{prototype.catch_copy}" %> </p> <%= link_to "by #{prototype.user.name}", root_path, class: :card__user %> </div>
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。