4

如何从数据库加载路由?我有带有列:url的表Post 。本栏目有部分url,例如:

  • 关于
  • 前卫/我们
  • progs/我们/信息
  • 空的
  • 等等

如何为此设置路线?结果示例:

http://mysite.com/progs/us for the page http://mysite/posts/2
4

1 回答 1

4

您可以通过此路线拦截任何网址:

    # routes.rb
    get '*url' => 'posts#show', format: false

注意:这条路线应该在你的配置中最后声明

控制器如下所示:

    # posts_controller.rb
    class PostsController < ApplicationController
      def show
        @post = Post.find_by_url!(params[:url])
        # by default "show" view is rendered with "post" variable
      end
    end
于 2013-04-09T21:24:47.987 回答