前提・実現したいこと
Rails初学者です。
写真や画像などの投稿アプリを作成しているのですが、既存の投稿内容の個別詳細ページへの機能の追加を考えています。
投稿者Aさんが投稿した画像詳細ページ下部に、Aさんが投稿した画像の一覧を表示させたいのですが、そのためのデータの取得がうまくいきません。
何卒よろしくお願いいたします。
usersテーブル
Column | Type | Options |
---|---|---|
username | string | null: false |
### usersテーブルのアソシエーション |
- has_many :materials
materialsテーブル
Column | Type | Options |
---|---|---|
text | string | null: false |
image | text | null: false |
user_id | integer | null: false, foreign_key: true |
### materialsテーブルのアソシエーション |
- belongs_to :user
発生している問題・エラーメッセージ
user = User.find(params[:id]) @materials = user.materials とコードをコントローラーに追加すると Couldn't find User with 'id'=○の エラーが生じます。 Material側からも試したのですが、 @material = Material.find(params[:id]) @material.user ↓ User Load (0.5ms) SELECT `users`.* FROM `users` WHERE `users`.`id` = 1 LIMIT 1 => #<User id: 1, email: "メールアドレス", created_at: "日付と時刻", updated_at: "日付と時刻", username: "Aさん"> と、やはりと言いますかuserAさんが投稿したリソースは1つしか取得できませんが、ここから逆に何かしらのコードを 追加しまして、Aさんの投稿一覧のリソースを取得できますでしょうか。
該当のソースコード
materials#show def show @material = Material.find(params[:id]) end
試したこと
materials#show def show @material = Material.find(params[:id]) user = User.find(params[:id]) @materials = user.materials end
補足情報(FW/ツールのバージョンなど)
ruby 2.5.1p57
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/03/27 08:38