diff --git a/.gitignore b/.gitignore deleted file mode 100644 index cb44c0a..0000000 --- a/.gitignore +++ /dev/null @@ -1,2 +0,0 @@ -/.rake_tasks~ -/temp.db diff --git a/Gemfile b/Gemfile index b668a39..3606de8 100644 --- a/Gemfile +++ b/Gemfile @@ -4,13 +4,6 @@ gem 'roda' gem 'rack-unreloader' gem 'tilt' gem 'erubi' -gem 'sequel' -gem 'rake' - -# Change to whatever database you plan to use -gem 'sqlite3' -# gem 'pg' # will also want gem sequel-pg -# gem 'mysql2' # change to gunicorn or passenger if you prefer: gem 'puma' diff --git a/README.md b/README.md index 159cce8..83f577f 100644 --- a/README.md +++ b/README.md @@ -2,8 +2,6 @@ For the single file app template, really the only file you need is the config.ru and run it with puma. -## Database - ## Views In this template, I've taken the single-file template and split up the config.ru to put routes and app logic in app.rb and call on templates to render proper html pages. `tilt` and `erubi` gems are added to do the rendering, and `rack-unreloader` gem is added to have puma automatically load file changes while running in development mode. @@ -23,7 +21,7 @@ Will need ruby; install it via package manager or a ruby manager like rbenv/ruby With this example, will basically just ignore the project's Gemfile. Debian 12 has a pretty current ruby version so just using it. ``` -sudo apt install ruby ruby-rack puma ruby-erubi ruby-tilt ruby-sequel ruby-sqlite3 rake +sudo apt install ruby ruby-rack puma ruby-erubi ruby-tilt sudo gem install roda rack-unreloader ``` diff --git a/Rakefile b/Rakefile deleted file mode 100644 index 4a4ce07..0000000 --- a/Rakefile +++ /dev/null @@ -1,33 +0,0 @@ -namespace :db do - - migrator = lambda do |version| - require_relative 'db' - Sequel.extension :migration - Sequel::Migrator.apply(DB, 'migrate', version) - end - - namespace :migrate do - - desc "Perform migration up to latest migration available" - task :up do - migrator.call(nil) - end - - desc "Perform migration all the way down (erase all data)" - task :down do - migrator.call(0) - end - - end - - desc "Erase all data, then bring back to latest migration" - task :reset do - migrator.call(0) - Sequel::Migrator.apply(DB, 'migrate') - end - - #desc "Migrate to a specific version" - #task :migrate do |version| - #end - -end diff --git a/app.rb b/app.rb index 8c321e0..76eeb17 100644 --- a/app.rb +++ b/app.rb @@ -14,17 +14,10 @@ class App < Roda view :index end - r.is 'users' do - @users = User.order(:id) - view :users - end - - r.on 'hello' do - r.is String do |name| - @page_title = 'A Custom Greeting' - @name = name.capitalize - view :greeting - end + r.is String do |name| + @page_title = 'A Custom Greeting' + @name = name.capitalize + view :greeting end end end diff --git a/config.ru b/config.ru index 1af6d15..4e24994 100644 --- a/config.ru +++ b/config.ru @@ -3,8 +3,7 @@ dev = ENV['RACK_ENV'] == 'development' require 'rack/unreloader' -Unreloader = Rack::Unreloader.new(:subclasses=>%w'Roda Sequel::Model', reload: dev, autoload: dev){App} -Unreloader.require './models.rb' +Unreloader = Rack::Unreloader.new(:subclasses=>%w'Roda', :reload=>dev){App} Unreloader.require './app.rb' run(dev ? Unreloader : App) diff --git a/db.rb b/db.rb deleted file mode 100644 index 5c72eb9..0000000 --- a/db.rb +++ /dev/null @@ -1,4 +0,0 @@ -# frozen_string_literal: true -require 'sequel/core' - -DB = Sequel.connect('sqlite://temp.db') diff --git a/migrate/001_create_users_table.rb b/migrate/001_create_users_table.rb deleted file mode 100644 index 29d513d..0000000 --- a/migrate/001_create_users_table.rb +++ /dev/null @@ -1,11 +0,0 @@ -# frozen_string_literal: true - -Sequel.migration do - change do - create_table(:users) do - primary_key :id - String :name, unique: true, null: false - end - end -end - diff --git a/models.rb b/models.rb deleted file mode 100644 index 33c6865..0000000 --- a/models.rb +++ /dev/null @@ -1,14 +0,0 @@ -# frozen_string_literal: true -require_relative 'db' -require 'sequel/model' - -if ENV['RACK_ENV'] == 'development' - Sequel::Model.cache_associations = false -end - -unless defined?(Unreloader) - require 'rack/unreloader' - Unreloader = Rack::Unreloader.new(reload: false, autoload: !ENV['NO_AUTOLOAD']) -end - -Unreloader.autoload('models'){|f| Sequel::Model.send(:camelize, File.basename(f).sub(/\.rb\z/, ''))} diff --git a/models/user.rb b/models/user.rb deleted file mode 100644 index a4f2fa1..0000000 --- a/models/user.rb +++ /dev/null @@ -1,3 +0,0 @@ -# frozen_string_literal: true -class User < Sequel::Model -end diff --git a/views/index.erb b/views/index.erb index 31b3b2d..4762d4c 100644 --- a/views/index.erb +++ b/views/index.erb @@ -1,3 +1,3 @@

- Welcome to my new page! Running in <%= ENV['RACK_ENV'] %> mode! + Welcome to my new page!

diff --git a/views/users.erb b/views/users.erb deleted file mode 100644 index 13cc1e7..0000000 --- a/views/users.erb +++ /dev/null @@ -1,5 +0,0 @@ -<% for u in @users do %> -

- Hello, <%= u.name %>! You're #<%= u.id %>! -

-<% end %>