質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Ruby on Rails 5

Ruby on Rails 5は、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

Ruby

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

Ruby on Rails

Ruby on Railsは、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

Q&A

0回答

826閲覧

Ruby on Railsで投稿の一覧表示ができなくて困っています

Yoshino0001

総合スコア6

Ruby on Rails 5

Ruby on Rails 5は、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

Ruby

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

Ruby on Rails

Ruby on Railsは、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

0グッド

0クリップ

投稿2021/02/17 02:33

前提・実現したいこと

Railsにてアプリを開発しております。
Rails Tutorial 13章を参考にEventモデルを作成し、
userのshowアクションでeventsを一覧表示させようとしました。

rails tutorial 13章

発生している問題・エラーメッセージ

"undefined method `events' for #User:0x00007fd4b43561b0"というエラーが発生しました。
consoleではuser.eventsのメソッドは動作していますが、localhostではuserのshowアクションにてuser.eventsを使用するとエラーが出てしまいます。

該当のソースコード

ruby

1#app/views/users/show.html.erb 2 3<% provide(:title, @user.name) %> 4<div class="row"> 5 <aside class="col-md-4"> 6 <section class="user_info_show"> 7 <div class="user_data clearfix"> 8 <%= gravatar_for @user %> 9 <p><%= @user.name %></p> 10 </div> 11 <div class="stats_number"> 12 <%= render 'shared/stats' %> 13 </div> 14 <div class="user_introduction_show"> 15 <%= @user.introduction %> 16 </div> 17 </section> 18 <%= render 'follow_form' if logged_in? %> 19 </aside> 20 <div class="col-md-8"> 21 <% if @user.events.any? %> 22 <h3>events (<%= @user.events.count %>)</h3> 23 <ol class="events"> 24 <%= render @events %> 25 </ol> 26 <%= will_paginate @events %> 27 <% end %> 28 </div> 29</div> 30 31

試したこと

基本的なスペルのチェック。
consoleでの確認作業。

補足情報(他のソースコード)

ruby

1#app/views/events/event.html.erb 2 3<li id="event-<%= event.id %>"> 4 <%= link_to gravatar_for(event.user, size: 50), event.user %> 5 <span class="user"><%= link_to event.user.name, event.user %></span> 6 <span class="content"><%= event.content %></span> 7 <span class="timestamp"> 8 Posted <%= time_ago_in_words(event.created_at) %> ago. 9 </span> 10</li> 11 12#app/models/event.rb 13 14class Event < ApplicationRecord 15 belongs_to :user 16 default_scope -> { order(created_at: :desc) } 17 validates :user_id, presence: true 18 validates :title, presence: true, length: { maximum: 255 } 19 validates :content, presence: true, length: { maximum: 3000 } 20end 21 22 23#app/models/user.rb 24 25class User < ApplicationRecord 26 has_many :events, dependent: :destroy 27 has_many :active_relationships, class_name: "Relationship", 28 foreign_key: "follower_id", 29 dependent: :destroy 30 has_many :passive_relationships, class_name: "Relationship", 31 foreign_key: "followed_id", 32 dependent: :destroy 33 has_many :following, through: :active_relationships, source: :followed 34 has_many :followers, through: :passive_relationships, source: :follower 35 attr_accessor :remember_token, :activation_token, :reset_token 36 before_save :downcase_email 37 before_create :create_activation_digest 38 validates :name, presence: true, length: { maximum: 50 } 39 VALID_EMAIL_REGEX = /\A[\w+\-.]+@[a-z\d\-]+(.[a-z\d\-]+)*.[a-z]+\z/i 40 validates :email, presence: true, length: { maximum: 255 }, 41 format: { with: VALID_EMAIL_REGEX }, 42 uniqueness: { case_sensitive: false } 43 has_secure_password 44 validates :password, presence: true, length: { minimum: 6 }, allow_nil: true 45 validates :introduction, length: { maximum: 255 } 46 47 ....... 48end 49 50#app/controllers/users_controller.rb 51 52class UsersController < ApplicationController 53 before_action :logged_in_user, only: [:show, :index, :edit, :update, :destroy, 54 :following, :followers] 55 before_action :correct_user, only: [:edit, :update] 56 before_action :authorized_user, only: :destroy 57 58 def show 59 @user = User.find(params[:id]) 60 @events = @user.events.paginate(page: params[:page]) 61 redirect_to user_path(current_user) and return unless @user.activated? 62 end 63 ....... 64end 65 66#app/controllers/events_controller.rb 67 68class EventsController < ApplicationController 69end

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

winterboum

2021/02/17 13:48

どんなエラーですか?
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだ回答がついていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問