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

manatee-itの備忘ログ

プログラム初心者のブログ。ruby on railsでWebサービスを作成中。(仕事が忙しくなかななか進まず) つまずいた所をなんでも記録。 環境:Ruby2.1 + Rails4.1.1 + Passenger + CentOS6.4(Apache + sqlite/MySQL)

check_box_tagでtoggle、rake routes実行でつまずいた点

■その1
ドットインストールを参考にcheck_box_tagとtoggleの機能を追加しようとしたところ、以下のエラーが発生。

ActionView::MissingTemplate (Missing template programs/toggle, application/toggle with {:locale=>[:en], :formats=>[:html, :text, :js, :css, :ics, :csv, :vcf, :png, :jpeg, :gif, :bmp, :tiff, :mpeg, :xml, :rss, :atom, :yaml, :multipart_form, :url_encoded_form, :json, :pdf, :zip], :variants=>[], :handlers=>[:erb, :builder, :raw, :ruby, :jbuilder, :coffee]}. Searched in:
* "/var/www/html/XXXX/app/views"
* "/usr/local/lib/ruby/gems/2.1.0/gems/devise-3.2.4/app/views"

コントローラーの記載に以下が抜けていたため、発生していた様子。
render nothing: true

renderはデフォルトのテンプレート以外の動作をさせるものと理解。

ドットインストールの動画だけを参考にしていると、自分でテキスト化する際にミスがあったり、なかなか大変。頻繁に時間が取れないけど、会員になってしまおうかな。。
本設定で行っているトグルの機能ですが、なぜかSQLiteではうまくいきませんでした。boolean型がないから?
MySQLでは、tinyint(1)となっており、試したところ正常に動作しています。

参考URL
Missing template - Railsのお部屋
Ruby On Railsでタスク管理アプリを作ってみる | jekylog
ドットインストール「Ruby on Rails 4入門」メモ - Qiita
ドットインストール Rails まとめ - gotagota日記

SQLiteからMySQLへのデータ変換
参考URL
SQLiteからMySQLへデータのマイグレーション(変換)|DB|ブログ|ノノログ



■その2
rake routesを実行したところ、以下のエラーが発生。

$ rake routes
rake aborted!
Gem::LoadError: You have already activated rake 10.4.2, but your Gemfile requires rake 10.3.2. Prepending `bundle exec` to your command may solve this.
(以降省略)

以下を実行して解消した。
bundle update rake

参考URL
Rails - 「rake db:migrate」コマンドで「rake aborted」になったら - Qiita