Отношения и ActiveRecord - PullRequest
       0

Отношения и ActiveRecord

1 голос
/ 20 февраля 2011

У меня один глупый вопрос.

У меня есть 2 таблицы в БД, и в одной таблице (пример: отчет) у меня есть внешний ключ из таблицы "склад". Я хочу получить название склада в моем отчете.

Я использовал этот метод, чтобы найти что-то из другой таблицы:

@report = ReportMain.find(params[:id])

@warehouse = Warehouse.find(@report.warehouse_id).name

У меня вопрос, есть какой-то самый простой способ сделать это?

Ответы [ 2 ]

0 голосов
/ 20 февраля 2011

Чтобы воспользоваться «магией» Rails, вам нужно настроить ассоциации в своих моделях.

В вашей ReportMain модели введите:

belongs_to: warehouse

В вашей Warehouse модели введите:

has_one :report_main

Затем вы можете сделать что-то вроде:

@warehouse = @report.warehouse
0 голосов
/ 20 февраля 2011

В зависимости от соотношения между этими таблицами:

@warehouse = @report.warehouse

Будет работать, если склад belongs_to к отчету и отчет has_one или has_many склад. Обязательно ознакомьтесь с Основами ассоциации в руководствах по Ruby on Rails, это потрясающее чтение.

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