SequelでModelをmigrateする手順
Railsほど大きいフレームワークを使いたくない時にSinatra
+ Sequel
でやろうとしたら意外と躓くポイントがあったので記録として残しておきます。今回はModelを作ってmigrationする流れについて。
Sequelでモデルを作る時にgeneratorは用意されてないようなので自前で書きます。
ディレクトリ構造にもルールはありませんが、Railsに近いものにして置くと整理が楽でしょう。
title
とcontent
を持つPostモデルを作るには以下のようなコードを使用します。
Sequel.migration do
change do
create_table(:posts) do
primary_key :id
String :title
String :content
end
end
end
class Post < Sequel::Model
end
そして migrate する時は sequel -m
を使用します。
bundle exec sequel -m db/migrations postgres://localhost:5432/my_app_development
できればデータベースの指定をdatabase.yml
から取ってきたかったけど、とりあえず動かしたかったのでそれはまた後で。