1

私はこれらのモデルを持っています:

Category(:name)
Post(:category_id, :title, :body)

カテゴリ モデルにはほんの一握りのカテゴリしかありません。現在、考えられるルートは次のとおりです。

/tasks/15015
/categories/5/posts/5641841

この形式でわかりやすい URL を使用したいのですが、完全にワイルドカードを使用せずに他のルートを台無しにする方法がわかりません。

/politics/518-obama-health-care

私が言ったように、私はこれを試しましたが、ワイルドカードが少なく、可能であれば現在のカテゴリとより統合されたものを探しています:

match '(:category_name)/(:id)' => 'posts#show'

他のアイデアも大歓迎です!

4

1 に答える 1

1

他のルートを台無しにしないように、最後に配置してください。次に、チェックにbefore_filter(のみshow) を入れて、それが有効であるPostsControllerことを確認し、そうでない場合は:category_nameActionController::RoutingError

于 2012-08-12T05:47:29.347 に答える