Newer
Older
2022-Database / 203-webapp / generate_url.rb
@”Sato ”Sato on 17 Jan 2023 650 bytes fix
#!/usr/bin/ruby

require 'sqlite3'
require 'securerandom'

BASE_URL = 'http://localhost:4567/question'

db = SQLite3::Database.new('answers.db')

# 回答を記録するテーブルanswersを作成する。
# 既に存在する場合は何もしない。
db.execute(<<SQL)
CREATE TABLE IF NOT EXISTS answers(
  answer_id TEXT PRIMARY KEY,
  name      TEXT,
  message   TEXT
);
SQL

# 回答IDとしてUUIDを生成
answer_id = SecureRandom.uuid

# 生成した回答IDをDBに登録
db.execute(<<SQL, answer_id: answer_id)
INSERT INTO answers(answer_id) VALUES(:answer_id);
SQL

# 回答用URLを生成し表示
printf("%s/%s\n", BASE_URL, answer_id)