Как вы можете использовать polymorphic_path в представлении jbuilder с пользовательским префиксом? - PullRequest
0 голосов
/ 05 февраля 2019

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

json.(payment, :created_at, :type, :check_number, :amount_cents, :payable_type, :payable_id)

# json.payable_path Rails.application.routes.url_helpers.polymorphic_path(:custom_name, payment.payable)

Должен ли я создать метод payable_path для модели оплаты?

Ответы [ 2 ]

0 голосов
/ 05 февраля 2019

Вот как я делаю это для комментария в моем приложении.На комментариях модель commentable является полиморфной ассоциацией.

Вот пара строк из моего _comment.json.jbuilder

json.extract! comment, :owner, :body, :created_at, :updated_at
json.commentable_path polymorphic_url(comment.commentable)
0 голосов
/ 05 февраля 2019

Мне не удалось заставить полиморфный путь работать, поэтому я применил геттер для оплаты:

  def payable_path
    Rails.application.routes.url_helpers.send("edit_#{payable_type.downcase}_path", payable)
  end

Не говорю, что это отвечает на вопрос, но это вариант, чтобы добиться цели.

...