Rails 3.2.12から4.2.0にアップデートした

Rails 3.2.12から4.2.0にアップデートした

ども。
やましもです。
今日は天神で買い物しつつ、びくドンで朝からハンバーグ食べたりしてました。
休憩がてらスタバ入って退屈だったのでRailsUpdate業に勤しんでいます。

手順

  • Gemfile
gem 'rails', '~> 4.2.0'

と追記して、
bundle update
で奇跡的に何もなくバージョンアップされることを期待しました。

カジュアルにrails sを実行。

~/teams (master) <S><U>% rails s                                                                                                                                                             [14:58:45]
=> Booting WEBrick
=> Rails 4.2.0 application starting in development on http://localhost:3000
=&gt; Run <code>rails server -h</code> for more startup options
=&gt; Ctrl-C to shutdown server
config.eager_load is set to nil. Please update your config/environments/*.rb files accordingly:

<ul>
<li>development - set it to false</li>
<li>test - set it to false (unless you use a tool that preloads your test environment)</li>
<li>production - set it to true</li>
</ul>

<dl>
<dt>Exiting</dt>
<dt>/Users/yamashitakazuhiko/.rbenv/versions/2.1.4/lib/ruby/gems/2.1.0/gems/activerecord-4.2.0/lib/active_record/dynamic_matchers.rb:26:in `method_missing&#039;/Users/yamashitakazuhiko/.rbenv/versions/2.1.4/lib/ruby/gems/2.1.0/gems/orm_adapter-0.5.0/lib/orm_adapter/adapters/active_record.rb:81: warning: already initialized constant ActiveRecord::Base::OrmAdapter</dt>
<dt>/Users/yamashitakazuhiko/.rbenv/versions/2.1.4/lib/ruby/gems/2.1.0/gems/orm_adapter-0.5.0/lib/orm_adapter/adapters/active_record.rb:81: warning: previous definition of OrmAdapter was here</dt>
<dd>undefined method `whitelist_attributes=&#039; for #&lt;Class:0x007fc3f88f07f0&gt; (NoMethodError)

まあ、この時点でいらんことやらなければよかったなんて思うわけですが、
ネットに情報あったので対応していきます。

まずは不足してるgemを追加。

  • Gemfile
 gem &#039;protected_attributes&#039;
 gem &#039;rails-observers&#039;
 gem &#039;actionpack-page_caching&#039;
 gem &#039;actionpack-action_caching&#039;
 gem &#039;activerecord-deprecated_finders&#039;

次に、Rails4系から自動Explainがなくなったらしいので、パラメーターを削除。
* /config/environments/development.rb

config.active_record.auto_explain_threshold_in_seconds = 0.5

ここまでやってやっと、、画面が・・・・

でない♥

\"スクリーンショット


undefined method `set_table_name\' for TeamInformation(Table doesn\'t exist):Class

どうもパラメーター変わったみたいですね。
まるっと置換して・・・

 find ./models -iregex &quot;.*rb&quot; | xargs sed -i &#039;&#039; &#039;s/set_table_name/self.table_name =/g&#039; 

でけたーーー!!!

\"スクリーンショット

というところで、僕はジムに行って、昨日より強くなってきます。

facebook
Twitter
コメントは受け付けていません。
Social Share Buttons and Icons powered by Ultimatelysocial