poyopoyo0のブログ

poyopoyoのブログ

Web 関連のメモ書きブログです。

Rails

【 Rails 】コメント機能の付いたブログのサンプル

コメント機能の付いたブログを Rails で作りたいときは、 こちらの記事 d.hatena.ne.jp がまとまっていて、とても分かりやすかった。そのまま書き写せば、問題なく動くブログが作れてしまう。 初歩に立ち戻りたいときに、こういう記事はとても便利。

【 Rails 】View から Controller に値を受け渡すには

Controller から View に値を受け渡すには、 Controller で値を定義してやればいいだけなのだけど、今度は逆に View から Controller に値を受け渡したいときはどのようにやればいいか、長いこと謎だった。 こちら stackoverflow.com の Answer を見て、よう…

【 Rails 】capybara と capybara-webkit は別物

@komagata さんが capybara や capybara-webkit などの言葉の定義を esa のコメント欄で書かれていたので、メモらせてもらいます。 ↓ 通常 capybara と言った場合は、テストのための DSL とその仕組自身のことを指し、それぞれの driver が selenium 、 capy…

【 Rails 】development 環境の DB の中身を覗くには

development 環境で SQLite を使っている場合、データ入力がきちんとできているかどうか確認するために、この記事 qiita.com と、この記事 d.hatena.ne.jp を参考にした。具体的には $ bundle exec rails db と入力した後、 sqlite の画面に切り替わるので、…

【 Rails 】 $ rake db:setup した後で、別の seed データを DB に新たに追加したいときは

development 環境で $ rake db:setup した後で、別の seed データを DB に追加したいときがある。 db/fixtures/テーブル名.yml に seed データを入力した後、再度 $ rake db:setup を実行してもいいのだが、既に手動で入力しているデータがあった場合、 $ ra…

【 Rails 】Rails プロジェクトに新規画面を追加するには

例えば reports 画面を新たに追加したい場合は $ bundle exec rails g controller reports index show new edit $ bundle exec rails g model report と打ち込んだ後、 migration を修正して $ bundle exec rake db:migrate を実行してやればOK。 上のコマ…

【 Rails 】 migration の実行コマンド

例えば Oopart テーブルに scares_count カラムを追加したい場合は、以下のように migration を実行する。 $ bundle exec rails g migration AddScaresCountToOoparts $ bundle exec rake db:migrate

テストではなく、通常時の JavaScript にブレイクポイントを挿入したいときは

テスト ではなく、通常時の JavaScript にブレイクポイントを挿入したいときは、 JavaScript 中に debugger と書くことで binding.pry のようにプログラムを止めて JavaScript のデバッグができる。テスト実行時と違い、通常時では Selenium が立ち上がらな…

Selenium で個別テストを実行するときのコマンド

このコマンドが必要になる度に、何度も調べ直しているので、メモ書き。 $ SELENIUM=1 ruby -Itest test/integration/foo_test.rb と Terminal から打ち込めば、 Selenium で個別テストが実行できる。 テストに binding.pry を入れて実行すると、一行づつテス…

execute_script と evaluate_script の違いって何だろう

Capybara でテストを実行した際、下記のようなエラーが出てテスト失敗することがある。 1) Error: TopTest#test_Post_note: JSON::NestingError: nesting of 101 is too deep test/integration/top_test.rb:65:in `block in <class:TopTest>' テストのソースを見たら evalua</class:toptest>…

【Rails】 rbenv で インストールした Ruby で Rails を動かすには

rbenv をインストールして Ruby をインストールするまでは、下の記事を参考にした。 rbenv を使って ruby をインストールする(CentOS編) - Qiita rbenv を使って ruby をインストールする(CentOS編) - Qiita 上の記事は CentOS の記事だが、Mac (OS X 10.9.5…