implement persistence

This commit is contained in:
2024-09-12 17:52:04 -07:00
parent e1c8153aa8
commit f777ea11b3
3 changed files with 24 additions and 0 deletions
+4
View File
@@ -13,6 +13,10 @@ gem "dry-types", "~> 1.0", ">= 1.6.1"
gem "puma"
gem "rake"
gem "rom", "~> 5.3"
gem "rom-sql", "~> 3.6"
gem "sqlite3"
group :development do
gem "hanami-webconsole", "~> 2.1"
gem "guard-puma"
+19
View File
@@ -0,0 +1,19 @@
Hanami.app.register_provider :persistence, namespace: true do
prepare do
require 'rom'
config = ROM::Configuration.new(:sql, target["settings"].database_url)
register "config", config
register "db", config.gateways[:default].connection
end
start do
config = target["persistence.config"]
config.auto_registration(target.root.join('lib/euchre_camp/persistence'),
namespace: "EuchreCamp::Persistence")
register "rom", ROM.container(config)
end
end
+1
View File
@@ -5,5 +5,6 @@ module EuchreCamp
# Define your app settings here, for example:
#
# setting :my_flag, default: false, constructor: Types::Params::Bool
setting :database_url, constructor: Types::String
end
end