在Rails中从数据库获取路由

时间:2012-11-02 12:46:34

标签: ruby-on-rails routes

如何从数据库加载路由? 我有一个表发布与列:url。此列中有部分网址,例如:

  • progs的/ US
  • progs的/我们/资讯

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

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

1 个答案:

答案 0 :(得分:3)

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

    # 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