0

在终端:

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。我想从数据库中销毁这条记录。如何销毁这条记录,请帮帮我。

4

1 回答 1

1

你想找到单数ServiceRequest。所以,而不是where,使用find

sr = ServiceRequest.only_deleted.find(57)

或者find_by如果您不希望它在未找到记录时引发错误:

sr = ServiceRequest.only_deleted.find_by(id: 57)

然后你可以调用destroy它:

sr.destroy

但似乎您需要真正从数据库中销毁对象,因为它已被标记为“已销毁”,因此您应该使用:

sr.really_destroy!
于 2015-04-28T08:57:03.740 回答