0

在我的应用程序中,我有有票的项目。我希望能够通过以下方式出示票证:

/projects/43/tickets

此路线有效,但会显示所有票证,而不仅仅是属于该项目的票证。我需要改变什么?

路线:

resources :projects do
  resources :tickets do
    collection do
      get "manage"
    end 
  end
end

楷模:

class Ticket < ActiveRecord::Base
  belongs_to :project
  ...
end

class Project < ActiveRecord::Base
  has_many :tickets, :dependent => :destroy
  ...
end

工单通过以下方式连接到项目:

Tickets (table)
    project_id
    ...the rest of the fields...
4

1 回答 1

1

这是控制器逻辑,而不是路由逻辑。在tickets_controller.rb

def index
    @project = Project.find(params[:project_id])
    @tickets = @project.tickets
end

现在,@tickets将包含当前项目的所有票证。

于 2013-02-14T17:24:36.300 回答