From cb90a80d49e23b0507dce08b3dda77a0238096bf Mon Sep 17 00:00:00 2001 From: julien Date: Mon, 2 Nov 2026 10:38:59 +0100 Subject: [PATCH] Add sqlite database --- .gitignore | 1 + Gemfile | 8 ++++---- db/migrations/001_create_test_records.rb | 12 ++++++++++++ lib/database.rb | 15 +++++++++++++++ netig.rb | 1 + 5 files changed, 33 insertions(+), 4 deletions(-) create mode 100644 db/migrations/001_create_test_records.rb create mode 100644 lib/database.rb diff --git a/.gitignore b/.gitignore index a591038..8340e8a 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,3 @@ .ruby-lsp/ .env +/db/*.sqlite3* diff --git a/Gemfile b/Gemfile index 8b99dd4..d68a777 100644 --- a/Gemfile +++ b/Gemfile @@ -15,12 +15,12 @@ gem "puma" gem "tilt" gem "erubi" +# Database +gem "sequel" +gem "sqlite3" + # Mail gem "mail" # Markdown gem "commonmarker" - -# Database -gem "sequel" -gem "sqlite3" diff --git a/db/migrations/001_create_test_records.rb b/db/migrations/001_create_test_records.rb new file mode 100644 index 0000000..12ceb81 --- /dev/null +++ b/db/migrations/001_create_test_records.rb @@ -0,0 +1,12 @@ +Sequel.migration do + up do + create_table(:test_records) do + primary_key :id + String :message, null: false + end + end + + down do + drop_table(:test_records) + end +end diff --git a/lib/database.rb b/lib/database.rb new file mode 100644 index 0000000..ed48779 --- /dev/null +++ b/lib/database.rb @@ -0,0 +1,15 @@ +require "fileutils" +require "sequel" + +database_path = File.expand_path( + ENV.fetch("DATABASE_PATH", "../db/development.sqlite3"), + __dir__ +) + +FileUtils.mkdir_p(File.dirname(database_path)) + +DB = Sequel.sqlite( + database_path, + timeout: 5_000, + connect_sqls: ["PRAGMA foreign_keys = ON"] +) diff --git a/netig.rb b/netig.rb index 3b06ed6..e8019e1 100644 --- a/netig.rb +++ b/netig.rb @@ -1,5 +1,6 @@ require "roda" +require_relative "lib/database" require_relative "config/mail" require_relative "lib/contact_form" require_relative "lib/contact_mailer"