Open shoota opened 10 years ago
たとえば、
pplogだと /u/ppworks
とかがそれに当たるかなーと思います。
github.com/[user_name]/[repo_name]
を例に上げると
user has many repositoriesな関係でリソースも同じように railsの標準なrouteを定義すると
resources :users, only: nil do
resources :repositories, only: [:show]
# get 'users/:user_id/repositories/:id' => 'repositories#show', as: user_repository とほぼ同義
end
みたいになるかなーと。この場合作られるルーティングは
/users/:user_id/repositories/:id
ッて感じになるので、欲しいのと違っちゃいますよねえ。
なので、ちょっと細工してあげて
get '/:user_name/:repository_name' => 'repositories#show', constraints: {user_name: /\w+/, repositoy_name: /\w+/}
とかすると github.com/[user_name]/[repo_name]
を実現することはできますね!
ふむふむ。リソース定義に対してアクションを指定してあげるのですね。実際に動かしてみたほうが理解できそう。
routes.rbで正規表現とか使えるのかな?
.rb
なんだから普通に使える。疑問点が完全にアホ。
githubもそうだけど、動的なURLってできるのかなー、っていう覚書。
github.com/[user_name]/[repo_name]
みたいな、ドメイン以外にpathが不定のルーティング。サッと調べた限りだと、見つからなかった。