[英]ArgumentError: wrong number of arguments (0 for 1) rails 4
在終端:
2.2.0 :001 > sr=ServiceRequest.only_deleted.where(:id=>57)
=> #<ActiveRecord::Relation [#<ServiceRequest id: 57, sr_number: "SRN57", email: "xxx@gmail.com", phone: "54545121", subject: "change of address", body: "sdssssssssssssss", status_id: 1, request_type_id: 1, customer_id: nil, created_at: "2015-04-24 13:06:52", updated_at: "2015-04-28 05:13:05", deleted_at: "2015-04-28 05:13:05">]>
2.2.0 :004 > sr.destroy
ArgumentError: wrong number of arguments (0 for 1)
我在應用程序中使用了paranoia
gem。我想從數據庫中刪除該記錄。如何銷毀該記錄,請幫幫我。
您要查找單個ServiceRequest
。 因此,使用find
代替where
:
sr = ServiceRequest.only_deleted.find(57)
或find_by
如果您不希望它在找不到記錄的情況下引發錯誤:
sr = ServiceRequest.only_deleted.find_by(id: 57)
然后可以在上面調用destroy
:
sr.destroy
但是似乎您實際上需要從數據庫中銷毀對象,因為它已被標記為“銷毀”,因此您應該使用:
sr.really_destroy!
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.