Я ненавижу иметь путь к сокету MySQL, жестко запрограммированный в моих файлах Rails YAML. Это имеет тенденцию ломать вещи, если вы хотите запустить приложение на множестве разных систем для разработки. Есть ли какой-нибудь официальный способ заставить его использовать переменную окружения или подобное? В настоящее время я использую это:
diff --git a/vendor/rails/activerecord/lib/active_record/connection_adapters/mysql_adapter.rb b/vendor/rails/activerecord/
index 69e97b9..992387c 100644
--- a/vendor/rails/activerecord/lib/active_record/connection_adapters/mysql_adapter.rb
+++ b/vendor/rails/activerecord/lib/active_record/connection_adapters/mysql_adapter.rb
@@ -50,7 +50,7 @@ module ActiveRecord
config = config.symbolize_keys
host = config[:host]
port = config[:port]
- socket = config[:socket]
+ socket = ENV['MYSQL_SOCK'] || config[:socket]
username = config[:username] ? config[:username].to_s : 'root'
password = config[:password].to_s
database = config[:database]