luckybooru/config/database.cr

31 lines
995 B
Crystal

database_name = "luckybooru_#{Lucky::Env.name}"
AppDatabase.configure do |settings|
if Lucky::Env.production?
settings.url = ENV.fetch("DATABASE_URL")
else
settings.url = ENV["DATABASE_URL"]? || Avram::PostgresURL.build(
database: database_name,
hostname: ENV["DB_HOST"]? || "localhost",
username: ENV["DB_USERNAME"]? || "postgres",
password: ENV["DB_PASSWORD"]? || "postgres"
)
end
#DB.open(settings.url) do |db|
# db.exec "set cluster setting sql.defaults.default_int_size = 4"
# db.exec "set cluster setting sql.defaults.serial_normalization = sql_sequence"
#end
end
Avram.configure do |settings|
settings.database_to_migrate = AppDatabase
# In production, allow lazy loading (N+1).
# In development and test, raise an error if you forget to preload associations
settings.lazy_load_enabled = Lucky::Env.production?
# Uncomment the next line to log all SQL queries
# settings.query_log_level = ::Logger::Severity::DEBUG
end