macros.rs 792 B

12345678910111213141516171819202122232425262728
  1. #[macro_export]
  2. macro_rules! diesel_update_table {
  3. (
  4. $table_name:ident,
  5. $changeset:ident,
  6. $connection:ident
  7. ) => {
  8. let filter =
  9. $table_name::dsl::$table_name.filter($table_name::dsl::id.eq($changeset.id.clone()));
  10. let affected_row = diesel::update(filter)
  11. .set($changeset)
  12. .execute(&*$connection)?;
  13. debug_assert_eq!(affected_row, 1);
  14. };
  15. }
  16. #[macro_export]
  17. macro_rules! diesel_delete_table {
  18. (
  19. $table_name:ident,
  20. $id:ident,
  21. $connection:ident
  22. ) => {
  23. let filter = $table_name::dsl::$table_name.filter($table_name::dsl::id.eq($id));
  24. let affected_row = diesel::delete(filter).execute(&*$connection)?;
  25. debug_assert_eq!(affected_row, 1);
  26. };
  27. }