Ruby on rails 4 Rails 4关联:未定义的方法
在过去的三个小时里,我一直在网上寻找这个问题的答案,所以我要发布一个问题。我试图创建一些基本的论坛软件,但我的人际关系有问题。这就是我得到的错误Ruby on rails 4 Rails 4关联:未定义的方法,ruby-on-rails-4,Ruby On Rails 4,在过去的三个小时里,我一直在网上寻找这个问题的答案,所以我要发布一个问题。我试图创建一些基本的论坛软件,但我的人际关系有问题。这就是我得到的错误 undefined method `forums' for # <ActiveRecord::Relation::ActiveRecord_Relation_Category:0x3706cb0> 希望我已经提供了足够的信息,如果还有什么需要我会更新后。通常我可以用谷歌解决这些问题,但这真的让我很困惑。提前谢谢 行动中的问题分类控制器#索
undefined method `forums' for # <ActiveRecord::Relation::ActiveRecord_Relation_Category:0x3706cb0>
希望我已经提供了足够的信息,如果还有什么需要我会更新后。通常我可以用谷歌解决这些问题,但这真的让我很困惑。提前谢谢 行动中的问题分类控制器#索引 应改为 @categories=Category.all 因为Category.all希望得到多个类别,而不是一个 此外,还应更改类别/索引文件
<% for category in @categories %>
<div class="panel panel-success">
<div class="panel-heading">
<h3 class="panel-title"><%= link_to category.name, category_path(category.id) %></h3>
<h4><%= category.description %> </h4>
</div>
<% for forum in category.forums %>
<div class="panel-body">
<h4><span class="glyphicon glyphicon-tree-conifer"></span><%= link_to forum.name, forum_path(forum.id) %> </h4>
</div>
<hr />
<% end %>
</div>
<% end %>
非常感谢您!我以前在控制器中使用过类别,不知道为什么要更改它。所以我一直的问题是写@category.forums。
class CategoriesController < ApplicationController
def index
@category = Category.all
end
def show
@category = Category.find(params[:id])
end
end
class ForumsController < ApplicationController
def show
@forum = Forum.find(params[:id])
end
end
class Category < ActiveRecord::Base
has_many :forums, dependent: :destroy
end
class Forum < ActiveRecord::Base
belongs_to :category
has_many :threads, dependent: :destroy
end
ForumName::Application.routes.draw do
root 'static_pages#home'
resources :users
resources :sessions, only: [:new, :create, :destroy]
resources :categories, :path => "forum"
resources :forums
resources :topics
resources :posts
match '/signup', to: 'users#new', via: 'get'
match '/signin', to: 'sessions#new', via: 'get'
match '/signout', to: 'sessions#destroy', via: 'delete'
end
<% for category in @categories %>
<div class="panel panel-success">
<div class="panel-heading">
<h3 class="panel-title"><%= link_to category.name, category_path(category.id) %></h3>
<h4><%= category.description %> </h4>
</div>
<% for forum in category.forums %>
<div class="panel-body">
<h4><span class="glyphicon glyphicon-tree-conifer"></span><%= link_to forum.name, forum_path(forum.id) %> </h4>
</div>
<hr />
<% end %>
</div>
<% end %>