Ruby on Rails: отображение имени вместо идентификатора в таблице соединений - PullRequest
0 голосов
/ 04 марта 2019

Я создаю приложение, в котором пользователи могут отслеживать записи лекарств, используя ROR backend API и React-интерфейс.У меня есть таблица соединений с именем current_drugs.Вот коды файлов моей модели.

 create_table "current_drugs", options: "ENGINE=InnoDB DEFAULT CHARSET=utf8", force: :cascade do |t|
    t.integer "user_id"
    t.integer "current_drug_id"
    t.date "to"
    t.date "from"
    t.string "memo"
    t.datetime "created_at", null: false
    t.datetime "updated_at", null: false
  end

Ниже приведены файлы моей модели.
user.rb

has_many :current_drugs
has_many :current_drug, :through => :current_drugs

drug.rb

has_many :currents, :class_name => "CurrentDrug", :foreign_key => "current_drug_id"

current_drug.rb

belongs_to :user
belongs_to :current_drug, :class_name => "Drug"

Мой вопрос заключается в том, существует ли умный способ визуализации json, где current_drug_id заменяется на название препарата.

В настоящее время я вызываю User.current_drug, который возвращаетмножество лекарств.Но я также хотел бы показать время от времени для этого препарата.Все, о чем я могу думать, это CurrentDrug.where (user_id: user.id), который возвращает что-то вроде этого.

[
                    {
                        "id": 1,
                        "user_id": 2,
                        "current_drug_id": 22000,
                        "to": "2019-01-01",
                        "from": "2018-12-25",
                        "memo": "Diabetes",
                        "created_at": "2019-03-04T13:09:59.000Z",
                        "updated_at": "2019-03-04T13:09:59.000Z"
                    },
                    {
                        "id": 2,
                        "user_id": 2,
                        "current_drug_id": 11000,
                        "to": "2019-01-01",
                        "from": "2018-12-25",
                        "memo": "Hypertension",
                        "created_at": "2019-03-04T13:10:05.000Z",
                        "updated_at": "2019-03-04T13:10:05.000Z"
                    }
                ]

Как я могу заменить деталь current_drug_id названием лекарства?Я заранее благодарю вас, ребята.

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