0

Как реализовать такую ​​маршрутизацию в рельсах:Формат Зависимые рельсы маршруты

  • если запрос требует html, чем на пути к конкретному действию, скажем, приложение # индекс

  • в случае запрос формата json, маршрут к ресурсам просто нормально к действию, которые производят запрашиваемого json

Очевидно, что это прецедент для одностраничного приложения, где рельсы в основном используются только для обслуживания json. Большинство страниц - это просто простые макеты с некоторыми загруженными значениями.

Спасибо за подсказки.

ответ

1

Способ решения этой проблемы в Rails можно обрабатывать в контроллере одним действием. В маршрутах файл, который вы бы просто объявить ресурс:

resources :posts 

И контроллер будет выглядеть следующим образом:

def index 
    @posts = Post.all 

    respond_to do |format| 
    format.html # index.html.erb 
    format.json { render :json => @posts } 
    end 
end 

Как вы можете видеть, тип реакции зависит от типа запрашиваемой.

Однако, если вы действительно хотите, чтобы маршрут по типу Я думаю, вы могли бы попробовать что-то вроде этого:

match 'posts/:id.:format' => 'posts#html_respond', :constraints => {:format => "html"} 
match 'posts/:id.:format' => 'posts#json_respond', :constraints => {:format => "json"} 
Смежные вопросы