Я пытаюсь создать конечную точку API с помощью active_admin, и у меня возникли проблемы с настройкой маршрута, как я их хочу. Я также не уверен, соответствует ли мое решение для маршрутов лучшей практикой REST.
У меня есть следующие модели:Active admin nested_route для конечной точки API
class Classification < ActiveRecord::Base
end
class Channel < ActiveRecord::Base
belongs_to :classification
has_many :channel_genres
has_many :channel_web_genres
has_many :web_genres, through: :channel_web_genres
end
class ChannelWebGenre < ActiveRecord::Base
belongs_to: channel
belongs_to: web_genre
end
class WebGenre < ActiveRecord::Base
end
Я хочу, чтобы создать конечную точку, которая будет принимать classification_id и web_genre, и вернуть все каналы, которые представляют собой союз между двумя (каналами, которые принадлежат к классификации и у меня есть web_genre.) Я новичок в active_admin и новичок, чтобы порекомендовать лучшие практики, поэтому у меня есть следующие вопросы:
1) Какой контроллер/действие должен отображать эту карту с точки зрения лучших практик. Я склонялся к действию show web_genre, вложенному в классификацию (GET/classic /: id/web_genre /: id), но мне это действительно не нравится.
2) Как только я определяю комбинацию контроллера/действия, как я могу правильно вложить ресурс в active_admin (предположим, что я должен вложить ресурс).
Если я забыл какую-либо информацию, пожалуйста, не стесняйтесь комментировать, и я добавлю ее. Заранее благодарю за ваше время и помощь!
AA делает экспозицию хорошими интерфейсами RESTful для зарегистрированных ресурсов, но я думаю, что сервис API должен быть построен отдельно. Я бы хотел порекомендовать взглянуть на более подходящие библиотеки http://intridea.github.io/grape/ https://github.com/nesquena/rabl – baxang