【发布时间】:2019-09-04 20:29:47
【问题描述】:
我有两个模型,列表和类别,具有多对多关系,并带有一个名为 categories_lists 的连接表。当我尝试获取单个列表所属的所有类别时,出现以下错误:
PG::UndefinedColumn: 错误:列 categories_lists.category_id 不存在 LINE 1: ...ER JOIN "categories_lists" ON "categories"."id" = "categorie... ^ 提示:也许您的意思是引用列“categories_lists.categories_id”...
查看:
<ul>
<% @categories.each do |cat| %>
<li><%= cat.title %></li>
<% end %>
</ul>
控制器:
def show
@categories = List.find(params[:id]).categories.all
end
型号:
class List < ApplicationRecord
has_and_belongs_to_many :categories
end
表:
describe categories_lists
+---------------+--------+-------------+
| Column | Type | Modifiers |
|---------------+--------+-------------|
| categories_id | bigint | |
| lists_id | bigint | |
+---------------+--------+-------------+
它使类别成为单数,而不是按照模型中定义的方式保持复数。我不知道如何纠正这个。
想法?
【问题讨论】:
标签: ruby-on-rails postgresql model-view-controller many-to-many