Отображение отношения Belongs_To в представлении - PullRequest
0 голосов
/ 13 января 2012

У меня есть вопрос, связанный с отношением own_to. В настоящее время у меня есть предмет, который принадлежит к имени. Это имя имеет заголовок, который является названием Предмета. На виде он отображает

<% = item.name.title %>

, которое постоянно выдает сообщение об ошибке, что «метод заголовка» не существует, несмотря на то, что это не метод. Предложения?

Ответы [ 3 ]

0 голосов
/ 13 января 2012

Это приведет к ошибке, если к вашему титровальному объекту не присоединен объект имени. Один из способов исправить это - использовать это вместо:

<% if item.name %>
  <%= item.name.title %>
<% end %>
0 голосов
/ 13 января 2012

Боюсь, что проблема гораздо глубже, чем вы думаете.

Предмет, который принадлежит_Имени

Хорошо, вы наверняка имели в виду, что Item has_one :name и Name belongs_to :item.
Разве вы не можете просто добавить столбец :name в вашу таблицу items?

Это имя имеет заголовок, который является названием элемента

Oulala. Вы имеете в виду item.title == item.name.title?

В представлении отображается <% = item.name.title%>, что постоянно приводит к ошибке

Хорошо. Тогда ничего не отображается в представлении.

сообщение об ошибке, что «метод заголовка» не существует, несмотря на то, что это не метод

Если это не метод, то что это?
Что конкретно говорит сообщение об ошибке?

0 голосов
/ 13 января 2012

Свойства - это методы, которые направляются через ActiveRecord :: Base и доступны как методы. Вы можете увидеть код здесь .

Я бы предположил, что с вашим предметом не связано имя, но у него все равно будет метод имени. Если вы выводите item.name, что вы получаете?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...