Как справиться с ошибкой after_create?(пытается создать webhook) - PullRequest
0 голосов
/ 23 мая 2019

Я новичок в бэкэнд-разработке. Извините за мой английский.

Сейчас я работаю в приложении RoR, используя Trello Api.

У меня есть модель отношений в моем приложении. Мне нужно создать webhooks после того, как объект Relation был создан. Но также мне нужно создать объект Relation, если Webhook не может быть создан (потому что он уже существует). ПРИМЕЧАНИЕ: я использую драгоценный камень ruby-trello. Trello :: Класс Webhook из рубина-драгоценного камня.

приложение / модели / relation.rb:

  after_create :create_webhook

  def create_webhook
    if self.kind == 'Board'
      Trello::Webhook.create({description: "Webhook for #{self.child_id}", callback_url: "#{CALLBACK_URL}/webhooks", id_model: self.child_id})
    end
  end

Если Webhook уже существует, у меня ошибка, пример из журнала сервера:

E, [2019-05-23T14:57:37.127939 #18797] ERROR -- : [400 POST https://api.trello.com/1/webhooks]: A webhook with that callback, model, and token already exists

Пример из консоли rails:

irb(main):008:0> Trello::Webhook.create({description: '', callback_url: '*hid_specially_for_security*', id_model: '*id_model_hid_specially*'})
E, [2019-05-23T15:21:26.416253 #22661] ERROR -- : [400 POST https://api.trello.com/1/webhooks]: A webhook with that callback, model, and token already exists
Traceback (most recent call last):
        1: from (irb):8
Trello::Error (A webhook with that callback, model, and token already exists)

Как мне обработать Trello :: Ошибка при создании объекта Relation, несмотря на то, что Webhook уже существует?

Заранее спасибо.

...