Guest User

Untitled

a guest
Mar 9th, 2018
78
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.16 KB | None | 0 0
  1. ## old db base
  2. class OldServerConnectionBase < ActiveRecord::Base
  3. establish_connection(
  4. :adapter => "mysql",
  5. :host => "localhost",
  6. :username => "user",
  7. :password => "somepwd",
  8. :database => "old_db_name"
  9. )
  10. class MethodNotAvailable<StandardError; end;
  11. def delete(id)
  12. raise MethodNotAvailable
  13. end
  14. def delete_all(conditions =nil)
  15. raise MethodNotAvailable
  16. end
  17. def destroy(id)
  18. raise MethodNotAvailable
  19. end
  20. def destroy_all(conditions = nil)
  21. raise MethodNotAvailable
  22. end
  23. def create_or_update
  24. raise MethodNotAvailable
  25. end
  26. def update_attribute(name, value)
  27. raise MethodNotAvailable
  28. end
  29. def update_attributes(attributes)
  30. raise MethodNotAvailable
  31. end
  32. end
  33.  
  34. ## some old db model
  35. class OldBook < OldServerConnectionBase
  36. set_table_name 'my_app_book_table'
  37. set_primary_key 'id_book'
  38.  
  39.  
  40. def self.migrate_all
  41. find(:all).each(&:migrate_me)
  42. end
  43.  
  44. def migrate_me
  45. new_book = Book.new()
  46. new_book.isbn_10 = self.isbn
  47. new_book.isbn_13 = convert_to_isbn_13(self.isbn)
  48. new_book.save!
  49. end
  50. end
  51.  
  52. ## in your console you just call
  53. OldBook.migrate_all
Add Comment
Please, Sign In to add comment