読者です 読者をやめる 読者になる 読者になる

ウェブサービスを作っています。

チュートリアルを進める

前回の続きです。このチュートリアルを進めます。
マイグレーションファイルというかモデルができたので、rake db:automigration を実行します。
automigation は、なかなかいい仕組みだと思います。

$ rake db:automigrate
(in /Users/milk1000cc/Sites/private/my-first-app)
Loading init file from /Users/milk1000cc/Sites/private/my-first-app/config/init.rb
Loading /Users/milk1000cc/Sites/private/my-first-app/config/environments/development.rb
Loading init file from /Users/milk1000cc/Sites/private/my-first-app/config/init.rb
Loading /Users/milk1000cc/Sites/private/my-first-app/config/environments/rake.rb
rake aborted!
default store already setup
/Users/milk1000cc/Sites/private/my-first-app/rakefile:24
(See full trace by running task with --trace)

oops. なかなか記事通りに進みませんね。
なんか init.rb と development.rb が 2 回ずつ実行されてますし...。バグなのかな?
#618 rake db:automigrate loads init.rb twice - merb
英語力がないので理解できませんでした。英語を勉強しましょう。
ソースも読んでみましたがよくわかりません。
とりあえず、「default store already setup」とか言ってて、config/dependencies.rb のここが怪しい。

dependency("merb-cache", merb_gems_version) do
  Merb::Cache.setup do
    register(Merb::Cache::FileStore)
  end
end

ブロックを消してみます。

dependency("merb-cache", merb_gems_version)

実行。

$ rake db:automigrate
(in /Users/milk1000cc/Sites/private/my-first-app)
Loading init file from /Users/milk1000cc/Sites/private/my-first-app/config/init.rb
Loading /Users/milk1000cc/Sites/private/my-first-app/config/environments/development.rb
Loading init file from /Users/milk1000cc/Sites/private/my-first-app/config/init.rb
Loading /Users/milk1000cc/Sites/private/my-first-app/config/environments/rake.rb
 ~ Connecting to database...
 ~ Loaded slice 'MerbAuthSlicePassword' ...
 ~ Parent pid: 11215
 ~ Compiling routes...
 ~ Activating slice 'MerbAuthSlicePassword' ...

できました!
続く