AdilA
@AdilA
Нравится кодить, изучаю go c echo

Как правильно вытащить из базы категории у которых есть parent_id?

Есть пользователи у пользователей есть категории выполняемых работ, у категорий есть субкатегории в той же табличке но с parent_id родительской категории
сделал так:
User.rb
has_many :users_ecategories
  has_many :ecategories, through: :users_ecategories

jointable
users_ecategory.rb
class UsersEcategory < ActiveRecord::Base
  belongs_to :user
  belongs_to :ecategory
end

ecategory.rb
class Ecategory < ActiveRecord::Base
	has_many :users_ecategories
  	has_many :users, through: :users_ecategories
  	has_many :ecategories, class_name: 'Ecategory', foreign_key: 'parent_id'
end

во вьюхе указываю
<% @user.ecategories.each do |ecategory| %>
                    <%= ecategory.parent_id.name %>
                    <%= ecategory.name %>
<% end %>


Вопрос, не могу понять как вытащить название родительской категории!
  • Вопрос задан
  • 2282 просмотра
Решения вопроса 1
@vsuhachev
Вы неверно описали связь, в классе вам нужно написать как-то так

class Ecategory < ActiveRecord::Base
  	belongs_to :parent, class_name: 'Ecategory'
end

И во вью ссылаться на parent, а не parent_id (это айдишник родительской записи, число)
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы