私はDeviseのアプリを持っています。私はユーザーモデルとアジェンダモデルを持っています。アジェンダ 'belongs_to'ユーザーとユーザー 'has_many "アジェンダ、これらは私のDB関係です。私はIRBを起動してdbデータを正しく取得できます。 user = User.first user.agendas と私はすべての投稿のリストを取得しますそのユーザーに サインイン時に問題が発生し、ユーザーはhome#indexにリダイレクトされますが、Home#indexの未定義メソッド `agendas 'でNoMethodErrorが返されます:NilClass 何かが欠落していると確信しています。私の議題コントローラにインデックスメソッドを必要とするも? ..app /ビュー/ホーム/ index.html.erb未定義のメソッド `agendas 'for nil:NilClass Actioncontroller?
<h3>Home</h3>
<div class="row">
<div class="span8">
<% if @user.agendas.any? %>
<h3>Agendas</h3>
<ol class="agendas">
<%= render @agendas %>
</ol>
<% end %>
</div>
</div>
私home_controller.rb
class HomeController < ApplicationController
before_filter :authenticate_user!
def index
@agendas = current_user.agendas.paginate(page: params[:page])
end
私のアジェンダコントローラには、将来のコード用の作成および破棄スタブがあります。
class Agenda < ActiveRecord::Base
attr_accessible :title
belongs_to :user
validates :title, presence: true, length: { maximum: 140 }
validates :user_id, presence: true
default_scope order: 'agendas.created_at DESC'
end
私の問題を捕まえました... home.html.erbはcurrent_user.agendas.anyである必要がありますか? – TheIrishGuy
アジェンダが作成されていないため、誰でも表示コードに関する問題はありますか? – TheIrishGuy