ponytail とは?
Railsのマイグレーションファイルをweb上で作成したり、web上でマイグレーション・ロールバックを実行できるようにするgemです。
インストール方法
Gemfileの:development
のgroupにgemを追加し、bundle install
してください。
group :development do gem 'ponytail' end
$ bundle install
また、Rails4からはdevelopment環境ではマイグレーションが最新でない場合にページを開く時に例外が出てしまうため、config/environments/development.rb
の下記の設定をコメントアウトしてください。
# Raise an error on page load if there are pending migrations # config.active_record.migration_error = :page_load
※この設定をコメントアウトしない場合、ponytailの一部の機能が制限されます。
使い方
$ rails s
でサーバーを起動し、 http://localhost:3000/rails/migrations/ を開いて下さい。
ソースコード
ソースコードはGithubに置いてあります。 https://github.com/sinsoku/ponytail
サンプルサイト
developブランチのgemを使ったdummyアプリはtravis-ciで常にHerokuにデプロイしています。
http://ponytail.herokuapp.com/
※ただし、dummyアプリではマイグレーション・ロールバックは実行できません。また、マイグレーションファイルも作成できません。
今後
まだ最低限の機能しかないので、少しずつ機能を増やしていきたい
- columnのuniq, null, indexなどのoptionの設定
- jsでのバリデーション
- ajaxでマイグレーション・ロールバックなどの実行
- その他、もう少しUIを使いやすく
- 複数のブラウザでの表示の確認
- テストを充実させる
- ...etc
あと、実際に使ってみて、使いづらい部分とか要望があったら @sinsoku_listy までリプライしてもらえると嬉しい。
対応できそうなら実装してみるので。