Advertisement
Guest User

Untitled

a guest
Mar 10th, 2019
167
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 17.28 KB | None | 0 0
  1. development:
  2. adapter: mysql2
  3. encoding: utf8
  4. reconnect: false
  5. database: main_development
  6. pool: 5
  7. username: root
  8. password:
  9. socket: /var/run/mysqld/mysqld.sock
  10.  
  11. test:
  12. adapter: mysql2
  13. encoding: utf8
  14. reconnect: false
  15. database: main_test
  16. pool: 5
  17. username: root
  18. password:
  19. socket: /var/run/mysqld/mysqld.sock
  20.  
  21. production:
  22. adapter: mysql2
  23. encoding: utf8
  24. reconnect: false
  25. database: main_prod
  26. pool: 5
  27. username: root
  28. password:
  29. socket: /var/run/mysqld/mysqld.sock
  30.  
  31. class CreateRetailerToDomains < ActiveRecord::Migration
  32.  
  33. def connection
  34. ActiveRecord::Base.establish_connection(
  35. :adapter => "mysql2",
  36. :encoding => "utf8",
  37. :reconnect => false,
  38. :database => "peripheral",
  39. :pool => 5,
  40. :username => "root",
  41. :password => "",
  42. :socket => "/var/run/mysqld/mysqld.sock").connection
  43. end
  44.  
  45. def change
  46. ActiveRecord::Base.connection.create_table :retailer_to_domains do |t|
  47. t.string :name
  48. t.string :domain
  49.  
  50. t.timestamps
  51. end
  52. end
  53. end
  54.  
  55. class RetailerToDomain < ActiveRecord::Base
  56.  
  57. establish_connection(
  58. :adapter => "mysql2",
  59. :encoding => "utf8",
  60. :reconnect => false,
  61. :database => "peripheral",
  62. :pool => 5,
  63. :username => "root",
  64. :password => "",
  65. :socket => "/var/run/mysqld/mysqld.sock")
  66.  
  67. self.table=retailer_to_domain
  68.  
  69. validates_presence_of :name, :domain
  70.  
  71. end
  72.  
  73. Add another database connection seeting to database.yml file.
  74.  
  75. database.yml file
  76.  
  77. development:
  78. adapter: mysql2
  79. encoding: utf8
  80. reconnect: false
  81. database: main_development
  82. pool: 5
  83. username: root
  84. password:
  85. socket: /var/run/mysqld/mysqld.sock
  86.  
  87. test:
  88. adapter: mysql2
  89. encoding: utf8
  90. reconnect: false
  91. database: main_test
  92. pool: 5
  93. username: root
  94. password:
  95. socket: /var/run/mysqld/mysqld.sock
  96.  
  97. production:
  98. adapter: mysql2
  99. encoding: utf8
  100. reconnect: false
  101. database: main_prod
  102. pool: 5
  103. username: root
  104. password:
  105. socket: /var/run/mysqld/mysqld.sock
  106.  
  107. another_database:
  108. adapter: "mysql2",
  109. encoding: "utf8",
  110. reconnect: false,
  111. database: "peripheral",
  112. pool: 5,
  113. username: "root",
  114. password: "",
  115. socket: "/var/run/mysqld/mysqld.sock"
  116.  
  117.  
  118.  
  119. Now In Migration file specify:
  120. ActiveRecord::Base.establish_connection(:another_database)
  121.  
  122.  
  123. class CreateRetailerToDomains < ActiveRecord::Migration
  124. ActiveRecord::Base.establish_connection(:another_database)
  125. def change
  126. create_table :retailer_to_domains do |t|
  127. t.string :name
  128. t.string :domain
  129.  
  130. t.timestamps
  131. end
  132. end
  133. end
  134.  
  135.  
  136.  
  137. It will get create table inside that database only.
  138.  
  139.  
  140. Model
  141.  
  142. class RetailerToDomain < ActiveRecord::Base
  143. ActiveRecord::Base.establish_connection(:another_database)
  144. end
  145.  
  146.  
  147. **To check the active database connection**
  148. ActiveRecord::Base.connection.current_database
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement