Arhn - архитектура программирования

Как я могу повторно использовать метод индекса в рельсах, передающих несколько параметров

Я делаю свой проект, в котором я использовал драгоценный камень rails-api и angularjs. Меня беспокоит то, что я видел некоторый учебник, который является индексным методом контроллера, который может получать разные параметры и отображать результат json. Итак, я попытался использовать DHC и Postman для передачи разных параметров, но получил ошибку 404, не найденную.

localhost:3000/vendormine/index?exp=Beach&city_address=Lapasan City&est_guest=30

контроллер.rb

def index
  venue = Venue.all
  if params[:exp]
    experience = Experience.find(params[:exp])
    venue = experience.venues.base_filter(params[:city_address], params[:est_guest])
  end
  render json: venue, status: :ok
end

маршруты.rb

resources :vendormines

  • этот URL-адрес не является безопасным URL-адресом. Попробуйте что-нибудь простое: localhost:3000/vendormine/index?exp=test_string 20.01.2015
  • что означает test_string? можете привести какой-нибудь наглядный пример. извините, я новичок в API рельсов. Благодарю вас! 20.01.2015

Ответы:


1

Вы получаете 404, потому что в вашем приложении нет маршрута, соответствующего localhost:3000/vendormine/index.

Попробуйте localhost:3000/vendormines?exp=Beach&city_address=Lapasan City&est_guest=30.

resources :vendormines создает следующие маршруты. Вам необходимо получить доступ к /vendormines, чтобы вызвать действие индекса VendorminesController.

        vendormines GET      /vendormines(.:format)                 vendormines#index
                    POST     /vendormines(.:format)                 vendormines#create
     new_vendormine GET      /vendormines/new(.:format)             vendormines#new
    edit_vendormine GET      /vendormines/:id/edit(.:format)        vendormines#edit
         vendormine GET      /vendormines/:id(.:format)             vendormines#show
                    PATCH    /vendormines/:id(.:format)             vendormines#update
                    PUT      /vendormines/:id(.:format)             vendormines#update
                    DELETE   /vendormines/:id(.:format)             vendormines#destroy

Вы можете увидеть маршруты вашего приложения, выполнив rake routes в терминале.

20.01.2015
  • Спасибо, сэр. Я узнал, что имя моего контроллера было в единственном числе. Кстати, я уже меняю его. Теперь мой вопрос, как я могу повторно использовать свой индексный метод с другим параметром для передачи. Не так, как запрос по умолчанию всех данных в месте проведения. 20.01.2015
  • Вам не нужно делать ничего особенного. Если 'localhost:3000/vendormines' корректно направляет к вашему VendorminesController#index, то 'localhost:3000/vendormines?exp=Beach&city_address=Lapasan City&est_guest=30` также направляет вас к тому же действию index. Параметры получения, которые вы добавили в URL-адрес, хранятся в params. 20.01.2015
  • Новые материалы

    Коллекции публикаций по глубокому обучению
    Последние пару месяцев я создавал коллекции последних академических публикаций по различным подполям глубокого обучения в моем блоге https://amundtveit.com - эта публикация дает обзор 25..

    Представляем: Pepita
    Фреймворк JavaScript с открытым исходным кодом Я знаю, что недостатка в фреймворках JavaScript нет. Но я просто не мог остановиться. Я хотел написать что-то сам, со своими собственными..

    Советы по коду Laravel #2
    1-) Найти // You can specify the columns you need // in when you use the find method on a model User::find(‘id’, [‘email’,’name’]); // You can increment or decrement // a field in..

    Работа с временными рядами спутниковых изображений, часть 3 (аналитика данных)
    Анализ временных рядов спутниковых изображений для данных наблюдений за большой Землей (arXiv) Автор: Рольф Симоэс , Жильберто Камара , Жильберто Кейрос , Фелипе Соуза , Педро Р. Андраде ,..

    3 способа решить квадратное уравнение (3-й мой любимый) -
    1. Методом факторизации — 2. Используя квадратичную формулу — 3. Заполнив квадрат — Давайте поймем это, решив это простое уравнение: Мы пытаемся сделать LHS,..

    Создание VR-миров с A-Frame
    Виртуальная реальность (и дополненная реальность) стали главными модными терминами в образовательных технологиях. С недорогими VR-гарнитурами, такими как Google Cardboard , и использованием..

    Демистификация рекурсии
    КОДЕКС Демистификация рекурсии Упрощенная концепция ошеломляющей О чем весь этот шум? Рекурсия, кажется, единственная тема, от которой у каждого начинающего студента-информатика..