Rails地址和路由?

时间:2010-05-20 14:09:09

标签: ruby-on-rails hyperlink routes

我在我的一个控制器中创建了一个自定义操作,如下所示:

  # GET /kases/discharge/1
  # GET /kases/discharge/1.xml
  def discharge
    @kase = Kase.find_by_jobno(params[:id])

    respond_to do |format|
      format.html { } # discharge.html.erb
      format.xml  { render :xml => @kase }
      format.pdf { render :layout => false }

      prawnto :prawn => { 
                 :background => "#{RAILS_ROOT}/public/images/discharge.png", 
                 :left_margin => 0, 
                 :right_margin => 0, 
                 :top_margin => 0, 
                 :bottom_margin => 0, 
                 :page_size => 'A4' }
    end

  end

对于编辑操作等,链接将是

link_to edit_kase_path(@kase)

是否有办法将排放行动联系起来,或者我是否必须制定自定义路线?

谢谢,

丹尼

1 个答案:

答案 0 :(得分:1)

您可以添加RESTful member action。在 config / routes.rb

map.resources :kases, :member => { :discharge => :get }

这将生成discharge_kase辅助方法,该方法将调用您的discharge操作。