DEV Community

Samuel Lubliner
Samuel Lubliner

Posted on • Updated on

Data integrity with validations

Here I addresses the issue of data integrity and validation in a Ruby on Rails application. Prevent invalid data from getting saved into the database, and reducing the need for defensive coding.

Invalid Records

Invalid records could can come from due user input, CSV imports, API calls, etc.

Defensive Code

Defensive coding gets inefficient.

Data Integrity with Validations

ActiveRecord enforces data integrity by providing validations. They prevent the .save method from executing if the record is invalid, returning false instead of true.

Common Validators

  • Presence: ensures a value is present before saving.
  • Uniqueness: ensures that the value is unique across the table.

Conclusion

ActiveRecord validations efficiently enforce data integrity at the model level. This reduces the need for defensive code in the views or controllers. Instead of fixing data-related issues at the view level, enforce correct data at the model level. This makes the application more robust and maintainable. Official Rails Guide on validations.

Top comments (0)