Лучшие практики для запроса данных из сторонней таблицы в Rails API для React - PullRequest
0 голосов
/ 11 октября 2018

Итак, я создаю веб-приложение с бэкэндом Rails и внешним интерфейсом React.

на моей странице meals#index я хочу отобразить все свои блюда, а также название и адрес ресторана, с которым они связаны (питание belongs_to ресторан и ресторан has_many питание).

Я - классическое приложение Rails, я бы просто написал:

<%= meal.restaurant.name %>
<%= meal.restaurant.address %>

, и запрос происходит за кулисами.

Но в случае приложения React / Rails мне нужно получить все эти данные с контроллера.

так, как я могу включить мой метод индекса:

module Api::V1
  class MealsController < ApplicationController
    def index
      @meals = Meal.order(:id)
      render json: @meals
    end
  end
end

Так, чтобы он выбирал данные ресторанов (конечно, как можно быстрее).

Кстати, я использую axios для извлечения данных из рельсов, чтобы отреагировать:

  componentDidMount() {
    axios.get('api/v1/meals.json')
    .then(response => {
        console.log(response)
        this.setState({
            meals: response.data
        })
    })
    .catch(error => console.log(error))
}

1 Ответ

0 голосов
/ 11 октября 2018

Один из способов - include ресторан еды в самом ответе json, например, так:

render json: @meals.to_json(include: :restaurant)

Приведенное выше приведёт к данным по питанию вместе с данными соответствующего ресторана .

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