问题标签 [acts-as-paranoid]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
1990 浏览

ruby-on-rails - Rails / Paranoia Gem:未定义的局部变量或方法`acts_as_paranoid'

环境:

当我Listing.find(1)在 Rails 控制台中进行操作时,它会向我发送这样的错误消息:

如果我删除acts_as_paranoid列表模型,查询可以通过。

除了在 Rails 控制台中,Paranoia gem 本身运行良好。

以前有人遇到过这个问题吗?

0 投票
1 回答
265 浏览

ruby-on-rails - ArgumentError:参数数量错误(0 代表 1)rails 4

在终端:

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

0 投票
1 回答
305 浏览

ruby-on-rails - 当我添加 rspec 测试时,其他测试开始失败

当我添加这个测试并运行整个测试套件时,另一个测试失败了。每次都是不同的,但错误总是一样的。

我正在使用带有 Devise 和 Paranoia 的 Rails(这是我正在测试的,用于软删除)。

这是错误:

SQLite3::ConstraintException: UNIQUE constraint failed: users.email: INSERT INTO "users" ("last_sign_in_at", "current_sign_in_at", "last_sign_in_ip", "current_sign_in_ip", "sign_in_count") VALUES (?, ?, ?, ?, ?)

这是使其他测试失败的测试。

0 投票
0 回答
634 浏览

ruby-on-rails - 如何在太阳黑子的acts_as_paranoid行中删除索引

我在 ruby​​ on rails 应用程序中使用太阳黑子和acts_as_paranoid 宝石。

当我删除记录时,acts_as_paranoid gem 会覆盖 ActiveRecord 行为,而不是删除它,而是将deleted_at字段更新为非空值。默认情况下,添加到所有 AR 查询WHERE deleted_at IS NULL中。

我有很多被删除的用户。在管理面板页面中,我需要查看和搜索它们。

问题是在重新索引User模型时,sunspot 根本不索引已删除的用户(WHERE deleted_at IS NULL默认添加范围)。

索引它的唯一机会是手动运行

所以,问题是:我应该如何更改我的代码,太阳黑子总是索引删除User模型中的记录?

0 投票
2 回答
1769 浏览

ruby-on-rails - 通过相关的activerecord对象获取偏执的删除对象

我有 3 个模型:

通常我可以Travel像这样通过链访问对象:request.offer.travel.

但是,如果Travel我需要的对象被删除paranoia- 我无法通过此类对象链访问它。

Travel.with_deleted.find(some_id_of_deleted_travel)完美地工作,但是request.offers.travel.with_deleted,同一个物体,把我扔了undefined method 'with_deleted' for nil:NilClass

如何通过关系访问已删除的对象?

0 投票
1 回答
228 浏览

ruby-on-rails - Rails act_as_paranoid 迁移在确认设计时出错

我首先添加了 Devise gem,没有可确认的选项。然后我后来在此迁移中添加了可确认选项:

当我运行迁移时,它给出了一个错误

0 投票
1 回答
896 浏览

ruby-on-rails - RailsAdmin 自定义操作以恢复软删除记录

我正在使用带有 rails_admin 0.8.1、mongoid 5.0 和mongoid_paranoia的 Rails 4.1.14 。我创建了RailsAdmin 自定义操作来恢复软删除的用户。

但我不断得到

来自我的开发日志

问题是每个 default_scope 查询过滤掉 deleted_at 不为零的记录。关于如何覆盖它的任何建议?

0 投票
0 回答
518 浏览

ruby-on-rails - 偏执狂的“with_deleted”命令不适用于 Rails 任务

我有以下任务要在 Rais 上运行:

问题发生在队列中

发生的事情是它在抛出

ActiveRecord::RecordNotFound: 找不到 'id'=71 的用户组 [WHERE "user_groups"."deleted_at" IS NULL]

就像命令行上没有“删除”一样。

我尝试在 Rails 控制台上键入相同的命令并且它工作,即当我运行 ug = UserGroup.with_deleted.find(71) 时它工作得很好并找到已删除的用户。

所以似乎偏执狂的'with_deleted'命令不适用于rails任务......我错过了什么吗?

0 投票
1 回答
988 浏览

ruby-on-rails - 有偏执狂的 ActiveAdmin

我想通过索引视图软删除(归档)记录,但默认操作实际上完全破坏了记录,而不是添加时间戳 deleted_at 列。

我试图覆盖 link_to 方法以确保 activeadmin 没有对链接做任何事情,但它对结果没有影响

0 投票
1 回答
26 浏览

ruby-on-rails - 如何制作辅助方法来检查对象的存在状态?

我正在使用 Rails4,并且还使用ActsAsParanoid来处理我视图中已删除的依赖项。

订单.rb

冰淇淋.rb

app/views/orders/show.html.erb

如果我删除了一个sauce ActsAsParanoid软删除它并保存我的观点免于破坏。并且该present?方法帮助我永久删除了sauces,但正如您所见sauces,在 any 中是可选的ice_cream,所以如果任何ice_cream没有也sauce将显示deleted value

所以我必须想出更多的逻辑来确定是否有冰淇淋没有酱汁,或者有删除的酱汁。所以我写了这个辅助方法。

application_helper.rb

然后用...

app/views/orders/show.html.erb

但它回来了NoMethodError in Orders#show

#< IceCream:0x007fcae3a6a1c0 > 的未定义方法 `atr'

我的问题是...

  • 我的代码有什么问题?以及如何解决?
  • 总的来说,我的方法是否被认为是处理这种情况的好习惯?