2012-03-11 138 views
1

我需要一個鏈接,指向所有作業,標記爲PHP。這種結構對我來說很有意義:Ruby on Rails路線:收集資源

site.com/jobs/skills/php

如何在Rails的做到這一點?

resources :jobs do 
    collection do 
     resources :skills, as: :find_by_skill 
    end 
    end 

但是,當我嘗試調用jobs_find_by_skill(skill)helper時,這不起作用。問題在哪裏?如果不能這樣做,你能否爲這種目的建議一個更好的URL結構?

回答

0

你混了標籤技能在這裏。我正在使用標籤爲此答案。

最常見的方法就是讓你的URL的工作將被嵌套資源

resources :jobs do 
    resources :tags 
end 

切記不要把後續的資源集合或成員塊。然後有這樣的tags_controller.rb例如

class TagsController < ApplicationController 
    def index 
    @jobs = Tag.find_by_name(params[:id]).jobs 
    end 
end 

工作標籤必須有作爲的對應的關聯。

希望能讓你更進一步。