Я выясняю, как я могу удалить некоторый ресурс из внешнего API из действия уничтожения в контроллере Rails.
, чтобы удалить этот ресурс, я должен сделать это, на самом деле у меня есть этот код в Концерне впапка контроллеров:
Концерн
def unsubscribe_user
@external_api = ExternalApi.new(@key1, @key2)
@subscription = @external_api.create(:subscription)
# subscription_id and client_id are stored in my DB as an "historical" record
@unsubscribed = @subscription.delete(subscription_id, client_id)
end
Контроллер
def destroy
unsubscribe_user
if @unsubscribed.nil?
flash[:notice] = "Successfully unsubscribed..."
redirect_to root_path
else
flash[:error] = "An error has ocurred..."
redirect_to root_path
end
end
ооо, на мой взгляд, у меня есть:
<p>Unsubscribe <%= button_to "Cancel my Subscription", suscription_path, {:action => :delete} %> </p>
Rails нужен идентификаторудалить ресурс из БД (например: subscription_path (current_user.id)), поэтому у меня нет этого ресурса в моей локальной БД, нет идентификатора для передачи.Мне нужно только выполнить этот код концерна в действии уничтожения.Как я могу это сделать?
Редактировать
Я забыл поставить маршруты:
resources :subscribe, except: :edit