-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathconfig.ru
49 lines (43 loc) · 898 Bytes
/
config.ru
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
require "roda"
require "brewery_db"
require "pry" if ENV["RACK_ENV"] == "development"
require 'dotenv/load'
require 'tilt'
require_relative 'beer'
class App < Roda
plugin :json
plugin :render
plugin :environments
configure :development, :production do
route do |r|
r.root do
r.redirect "/beer_me"
end
@brewery_db = BreweryDB::Client.new do |config|
config.api_key = ENV["BEER_ME"]
end
r.on "beer" do
r.is do
r.get do
end
r.post do
end
end
end
# /beer_me
r.on "beer_me" do
beer = @brewery_db.beers.random(hasLabels: "y")
@beer = Beer.new(beer)
r.is do
r.get do
render("beer_me")
end
r.post do
@beer.beers_json
end
end
end
end
end
end
run App.freeze.app