Ruby On Rails: доступ к значению из связанной модели - PullRequest
0 голосов
/ 17 апреля 2019

Я написал здесь, поскольку вы, ребята, намного более полезны, чем книги, которые были для меня в прошлом!Пожалуйста, извините, поскольку я все еще учусь.

У меня есть приложение Landlord MGT, в котором есть модель дома и модель арендатора .На странице показа для дома я хотел бы видеть арендатора, который имеет связанный house_id в своей модели.

показать страницу для дома

.wrapper_with_padding
  %h1.showheading= 'Property Information'
  #house_show
    %p First Line Address: #{@house.doorno} #{@house.house_title}
    %p Description:  #{@house.description}
    %p Tenant:  #{@tenant.house.tenant_id}

В настоящее времявышеприведенная строка кода для Арендатора не работает и получает значение NULL.

Модели

class House < ActiveRecord::Base
  belongs_to :user
  belongs_to :tenant

class Tenant < ActiveRecord::Base
  belongs_to :user
  belongs_to :house

У меня ничего нет в моем контроллере для показа.

В итоге таблица арендаторов имеет атрибут house_id.На странице шоу для этого конкретного дома я хотел бы видеть связанный tenant_id.

Заранее спасибо

1 Ответ

2 голосов
/ 17 апреля 2019

Нет никаких причин для вас объявить @tenant.Вы можете получить доступ к связанному с арендатором @house объекту через @house.tenant и для получения идентификатора просто используйте @house.tenant.id.

Редактировать: Ваши ассоциации неверны.См .: https://guides.rubyonrails.org/association_basics.html#the-types-of-associations

Поскольку у Арендатора есть столбец house_id, он belongs_to :house.

Это означает, что дом has_one :tenant (также может быть has_many, если вы в этомСорта вещь).Исправьте это, затем попробуйте то, что я написал выше.

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