Как печатать в рельсах после вызова API для создания из android - PullRequest
2 голосов
/ 12 марта 2020

У меня есть приложение android и приложение rails. Когда заказ сделан из android, он вызывает API создания заказа в приложении rails. Таким образом, всякий раз, когда создание заказа успешно выполняется в приложении rails, я хочу выполнить действие печати, которое печатает счет заказа, используя данные, отправленные с android.

Но контроллер, который я создал, дает только ответ либо в json или html формат. то есть

class API::V1::OrdersController << Api::ApiController
  def create
    @order = Order.create(
                    item: params[:item],
                    quantity: params[:quantity],
                    price: params[:price]
                    )
    if @order.persisted?
      respond_to do |format|
        format.json { notice: 'Order successfully created.' }
        format.html { render :print }
      end
    end
  end
end

Это даст только ответ «Заказ успешно создан». когда используется json или страница формата html, записанная как 'print. html .slim' в android. Но я хочу напечатать страницу счета заказа из 'print. html .slim', когда заказ сохраняется.

print.html.slim

table.table
  thead
    th Item Name
    th Quantity
    th Price
  tbody
    tr
      td = @order.item
      td = @order.quantity
      td = @order.price

Есть ли способ, которым я могу сделать это?

1 Ответ

0 голосов
/ 13 марта 2020

То, что у вас есть, и то, что вы ищете, это две разные вещи.

Поскольку вы настроили сервер Rails в качестве конечной точки API, вы можете возвращать только значения JSON. Для того, что вам нужно, вы должны принять данные JSON в вашем приложении android и делать то же, что и вы sh с данными в вашем приложении (например, отображать подтвержденный заказ)

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