Показывать имя вместо идентификатора в отношении HABTM - PullRequest
3 голосов
/ 13 января 2011

Извините, если я слишком начинающий, но никто из других связанных с этим ответов не работает.

Я хочу показать название категории, к которой относятся ссылки, а не идентификатор.

Вот миграция.

class CreateCategoriesLinks < ActiveRecord::Migration
  def self.up
    create_table :categories_links, :id => false do |t|
  t.references :category
  t.references :link
  end
 end

def self.down
  drop_table :categories_links
end

конец

Категория модели

class Category < ActiveRecord::Base
  has_and_belongs_to_many :links
end

Модель ссылок

class Link < ActiveRecord::Base     
 has_and_belongs_to_many :categories
end

А вот что находится в контроллере ссылок под индексом и показывает

@categories = Category.find(:all, :order => 'name')

и вот что сейчас в индексе, но я попробовал каждую перестановку, которую смог найти.

<%= link.category.name %>

Если поставить <%= link.category_ids %>, он покажет идентификаторы.

1 Ответ

1 голос
/ 13 января 2011

Попробуйте:

<% link.categories.each do |cat| %>
  <%= cat.name %><br>
<% end %>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...