Bad to worse rails practice

Problem

We used ruby gem paranoia to soft delete our active-records. which is super easy to integrate with a rails application. Our migrations consists such code to update all User/Project. While running migrations to a new created DB following code will break due to paranoia expectations of having deleted_at column, which is being added in later migrations. Now that sucks, I’ve to comment out acts_as_paranoid every time while running migrations to new db.

Solution

User.all update should be User.unscoped.all. updates. Well this is not related to only paranoia. We should keep this always in mind, In Case we want to update or operate all (all i mean) we must use unscoped always. Second thing, We should not use such code into migrations. This could be very obvious but i’ve seen such ignorance ever.

And if you get stuck… Ask Here

email me rajeevsharma86@gmail.com

Avatar
Rajeev Sharma
Technical Lead

software entrepreneur and father of a fairy tale!!!.

Related