0

この質問は、より多くのレールの一般的なヘルプになる可能性があると思いますが、ペーパークリップアイテムを削除しようとすると問題が発生します。

ボタンをクリックすると、次のように表示されます---ルートが一致しません[POST] "/ Expenses / 3"-おそらくこれはメソッドを呼び出す間違った方法ですか?

よろしくお願いします。以下のコードをご覧ください。

これが私の表示ボタンです。削除ボタンをコピーして、コントローラーメソッドを新しいものに変更しました。

            <%= link_to raw('<i class="icon-trash icon-white"> </i>'), 
                          expense_item, method: :destroy_receipt, 
                          data: { confirm: 'Are you sure delete receipt?' }, 
                          class: "btn btn-mini btn-danger" %>

と私のコントローラーで

def destroy_receipt
  @expense = Expense.find(params[:id])
  @expense.receipt.destroy
  redirect_to expense_path
end

私のモデル

class Expense < ActiveRecord::Base
  attr_accessible :amount, :expense_date, :description, :is_billable, :mileage, 
                                :pay_method, :project_id, :type_id, :on_site, :receipt

    belongs_to :project, foreign_key: :project_id
    belongs_to :expense_type, foreign_key: :type_id

  has_attached_file :receipt, :styles => { :medium => "300x300>", :small => "100x100>" }
4

1 に答える 1