ハイパーニートプログラマーへの道

頑張ったり頑張らなかったり

Ruby on Rails

【Ruby on Rails】dyld: lazy symbol binding failed: Symbol not found: というエラーが出たので

Rails version 4.2.10 Ruby version 2.2.8-p477 (x86_64-darwin17) Mac OS X 10.13.1 bin/rake spec を走らせた時に以下のようなエラーが出るようになりました $ ./bin/rake spec dyld: lazy symbol binding failed: Symbol not found: __ZN2v82V821AddGCPro…

【Rails】ファイルアップロードのテスト時のFactoryGirl (FactoryBot) の設定

Mac OS X Sierra 10.12.6 Ruby version 2.1.2-p95 (x86_64-darwin16.0) Rails version 4.1.16 このようにしていまして FactoryGirl.define do # 中略 factory :content_figure do content do ActionDispatch::Http::UploadedFile.new( filename: 'figure.png…

【Rails】ファイルアップロードのテストにてMiniMagickのValidationがfailedするとき

Mac OS X Sierra 10.12.6 Ruby version 2.1.2-p95 (x86_64-darwin16.0) Rails version 4.1.16 carrierwave (0.10.0) RSpec + FactoryGirl (FactoryBot) でファイルアップロードが絡むテストを走らせたときに、以下のようなエラーに遭遇 Validation failed: F…

【Ruby on Rails】content_tagでmultipleなselectタグを生成する

要するにこういう感じです https://www.w3schools.com/tags/tryit.asp?filename=tryhtml_select_multiple 複数の要素を選択できる select タグを作ろうと こちらを参考にやってみました https://rubyplus.com/articles/3411-Tag-View-Helpers-in-Rails-5 Rai…

【RSpec】 Capybara + poltergeist にて rspec failed to detect theversion of the executable at '/usr/bin/phantomjs'

Ubuntu16.04上に構築しているRailsにてfeature spec (capybara + poltergeist) を走らせたときに rspec failed to detect theversion of the executable at '/usr/bin/phantomjs' とかなんとかエラーでこける。 ちょっと古いですがこちらを見ると stackoverf…

【備忘録】【Ruby on Rails】MiniTestにおいて、ActionView::Template::Error: couldn't find file... と出るときは

Ruby on Rails Tutorialの4th Editionが出たので、アプリを作っていったのですが www.railstutorial.org time_ago_in_wordsを使用している箇所を、rails_best_practicesのNot user time_ago_in_wordsに倣って、rails_timeagoというgemを使うことにしました。…

【Ruby on Rails】sorceryを使用したログインで、ユーザーネーム・emailのどちらでもログインできるようにする

Deviseでの方法はいくらでもあるのですけど、sorceryについてはなかなか見つからなかったもので。 Rails version 4.2.5 Ruby version 2.3.0-p0 (x86_64-linux) sorcery (0.9.1) 前提:公式のこちらのチュートリアルに沿って、emailでのログインは可能になっ…

【Ruby on Rails】Cloud9 + Heroku + SendGridで本番環境からメールを飛ばす

現在Udemyでこのような講座をやっていまして www.udemy.com 開発環境はCloud9、デプロイ先はHerokuでのお話です。 Herokuでの準備 Heroku>Dashboard>左ペインManage Account>Billingでクレカ情報登録をしておきます。 Cloud9のコンソールにてheroku addons:c…

【Ruby on Rails】 cocoon gemで動的に要素を追加・削除できるフォームを作る

今回はRecipeとIngredientというモデルがあり、その中間テーブルとしてRecipeItemというモデルがあります。 RecipeItemにはamountという属性があり、Recipeのフォーム画面において、関連するIngredientをセレクトボックスから選び、その量(amount)も登録でき…

【Ruby on Rails】 bundler1.11.2に更新したら?rails g migration, rails cなどができなくなって困った

rails g migrationとかrails cの突然の死 bundle installした際に「bundler古いよ」と言われたので、その後rbenv exec gem update bundlerで1.11.2に更新しました。 すると今度は(bundle exec)rails g migrationやrails cでエラーが出るようになりました(な…

【Ruby on Rails】rake db:dropでもDBを削除できないとき

rake db:migrateしようとしてもできなくて、いろいろにっちもさっちもいかなくなりまして*1、いっそDB削除して作りなおそうとしたのですが rake db:dropできない!?

【Ruby on Rails】 bundle install時にnokogiriのエラーが出たときの対処

Mac OS X Yosemite(10.10.5) Rails version 4.2.4 Ruby version 2.2.3-p173 (x86_64-darwin14) RubyGems version 2.4.5.1 bundle installした際にnokogiriでエラーが出ました。 An error occurred while installing nokogiri (1.6.6.2), and Bundler cannot …

【備忘録】MySQL2のインストール(on Mac)、Railsでの設定

外部プロジェクトクローンしてきて $ bundle install --path vender/bundle としたけど怒られた。そういえばまだシステムにMySQLをインストールしてなかったので。 環境はMac(Yosemite)です。 $ brew update $ brew install mysql ==> Downloading https://h…

久しぶりにSqale.jpにデプロイしたらコケたので(ついでにrvmからrbenvに乗り換える on Ubuntu)

いやあもうSqale.jpに久しぶりにデプロイしたら、にっちもさっちもいかなくなりまして。 詳しくは後述するとして、結論から先に書くと .ruby-versionをgit addしろ 色々やったけど、ああもうダメだ・・・と思っていたところ、Sqale.jpからメールが。一部引用…

【Ruby on Rails】carrierwave-dropboxを使ってDropboxにファイルアップロード

元ネタはこちら https://www.udemy.com/ruby-on-rails-4-a-test-driven-approach/#/lecture/2310264 Dropboxでアプリ作成 https://www.dropbox.com/developers/apps にアクセスしまして。Create Appを押す。 名前はMy_bookstore_appとでもします。テキトーに…

【Rspec】Warning: you should require 'minitest/autorun' instead. (略 とか出てきたので

Rails 4.2.0 Ruby 2.1.4p265 Rspec 3.2.3 Rspec及びguardを使っていたら、警告が Warning: you should require 'minitest/autorun' instead. Warning: or add 'gem "minitest"' before 'require "minitest/autorun"' RSpecでテストする際に、「Warning: you …

【Ruby on Rails】jQuery UI Datepikerを使う

Udemyの講座をやっているんですが https://www.udemy.com/ruby-on-rails-4-a-test-driven-approach/#/lecture/2310254 こんな感じでフォームにフォーカスが当たるとデイトピッカーがでてくるのを実装しようかと。 Gemfile gem 'jquery-rails' gem 'jquery-ui…

shoulda-matchers 2.8.0で undefined method `validate_presence_of'などと出たので。

Rails 4.2.0 Rspec 3.2.2 shoulda-matchers 2.8.0 it { should validate_presence_of(:hoge) } it { should validate_uniqueness_of(:hage) } とかでundefined methodだと怒られました。調べてみると・・・ undefined method `validate_presence_of' in shou…

Rails Tutorial Chapter7をやる 断片的なメモ

英語版をやっていってるのですが、そろそろ日本語版も参考にしないと辛くなってきましたな・・・。 やったこと: debugメソッド経由でデバッグ情報を表示する SassのmixinsでCSSルールのグループをまとめて複数の場所で再利用することができる。 Railsには3…

Ruby on Rails Tutorial Chapter6をやる (いつも通り)断片的なメモ

ほんとはもうとっくに終わっているのですが・・・第6章いきます。 Chapter 6: Modeling users | Ruby on Rails Tutorial (3rd Ed.) | Softcover.io やったこと モデルの作成とマイグレーション ActiveReocordの使用。データモデルを作ったり操作したりする…

Rails Tutorial Chapter5をやる 断片的、そして適当なメモ

Rails Tutorialも第5章です。メモを取りながらやっているのですが、いかんせん日にちが経っている(実は今10章まで進んだw) なのでほとんどメモをコピペしてるだけですが・・・。 第4章はRailsというよりRubyの基本的な構文についてなので、初心者の方…

Rails Tutorial Chapter3をやる 断片的なメモ

2章はさくっと飛ばしまして、今章で作成するsample_appを今後も使っていく、ということで作るのですが。 断片的なメモなので、あまり参考にならないかと。Nitrous.io上で開発してます。 テストの作成と実施 provideとyield setupメソッド Bitbucketへリモー…

Nitrous.ioでRubyのバージョンを変更する(そしてハマる)

Rails Tutorialも5章に入りましたが、いつものようにrails sしたら、 $ rails s -b 0.0.0.0 -p 4000 # ちょっとこういうオプションつけてます。 Your Ruby version is 2.1.1, but your Gemfile specified 2.0.0 怒られましたがな。Herokuは2.0.0推奨とのこ…

Rails Tutorial 1.5 Deploying Nitrous.ioからHerokuへプッシュするまで

Rails Tutorial Chapter1に沿ってやっていきます。 1.5 Deploying 1.5.1 Heroku setup 前回の続きですが 、何はともあれHerokuでアカウント作成します。 Rails Tutorial Chapter1をやる Nitrous.ioからBitbucketにリポジトリも作ってみる - ハイパーニートプ…

Rails Tutorial Chapter1をやる Nitrous.ioからBitbucketにリポジトリも作ってみる

Frontmatter | Ruby on Rails Tutorial (3rd Ed.) | Softcover.io Ruby on Rails Tutorialをやり始めたのですが、Chapter 1:From zero to deployはまあ基本的なことなのでスンスーンと進むかと。 環境はNitrous.ioです。 Nitrous.ioからbitbucketにgitリポジトリ…

Nitrous.ioでRails4.2.0にアプデ、からのrails sでアクセスできないとき

Nitrous.ioで使っているRailsを4.1.0から4.2.0へアップデートしました。とはいっても gem update rails とするだけなのですが、その後ちょっと困ったことが rails s -p 4000でもダメ Nitrous.ioでphpMyAdminの設定 - ハイパーニートプログラマーへの道 以前p…

【Ruby on Rails】 スクリプトでActiveRecordを使ってバッチ処理

単純にスクリプト置いて、それをrunnerで実行、というところまではできたんですが、DBにアクセスしたいなと。 ActiveRecord使うとな? Ubuntu 14.04 LTS Rails 4.1.5 Ruby 2.1.1p76 app配下にbatchディレクトリを作って、そこにスクリプトを用意しました。 …

【Ruby】【Rails】【Mechanize】kindle.amazon.co.jpで自分がフォローしている人たちのハイライトを取得

自分のハイライトを取得する方法はちらほら見当たるんですけど、自分がフォローしている人たちのハイライトを取得するのはないなーと。 AmazonはそのためのAPIを提供していないようなので? 愚直にMechanizeでやろうかと。 コード require "mechanize" mech …

rootの設定と共通テンプレートの設定

rootの設定 #09 rootの設定をしよう | Ruby on Rails 4入門 #09 rootの設定をしよう | Ruby on Rails 4入門 - プログラミングならドットインストール projects#indexがルートに表示されるように routes.rb # You can have the root of your site routed with…

【Ruby on Rails】Controllerを作る

Controllerを作る #07 Controllerを作ってみよう | Ruby on Rails 4入門 #07 Controllerを作ってみよう | Ruby on Rails 4入門 - プログラミングならドットインストール $ rails g controller Projects モデルと違って複数形 routingの設定 config/routes.rb…