Bạn có thể sử dụng chế độ hộp cát từ thiết bị đầu cuối của mình:rails console --sandbox
Điều này cho phép bạn chơi với các mô hình, sử dụng tất cả các phương pháp như:.create
, .delete
, .save
, .update
mà không ảnh hưởng đến DB ban đầu. Mọi sửa đổi bạn thực hiện sẽ được khôi phục khi thoát.
CẬP NHẬT
Bạn có thể đạt được mục tiêu này với AREL từ thiết bị đầu cuối của bạn:
# Arel::InsertManager
table = Arel::Table.new(:users)
insert_manager = Arel::InsertManager.new
insert_manager.into(table)
insert_manager.insert([ [table[:first_name], 'Eddie'] ])
insert_manager.to_sql
# Arel::UpdateManager
table = Arel::Table.new(:users)
update_manager = Arel::UpdateManager.new
update_manager.set([[table[:first_name], "Vedder"]]).where(table[:id].eq(1)).table(table)
update_manager.to_sql
Tại đây bạn có thể tìm thấy tất cả những người quản lý Arel, như delete_manager.rb , select_manager.rb và những người khác.
Đọc hay: http://jpospisil.com/2014/06/16/the-definitive-guide-to-arel-the-sql-manager-for-ruby.html