Ruby on Rails
ことの始まり 前回の記事でdelayed_jobを導入してみた。 yasagori-programing.hatenablog.jp 導入したのはいいものの、rspecの記事がほとんど見つからない… これは非常に困ったので、そのやり方をまとめておく。 テストの考え方 まずは考え方を整理しておく…
ことの始まり 現在運用しているサービスは、メール送信に失敗した際Bugsnagで通知を飛ばすようにしていた。 通知を受けたら手動でメールの再送を行っていたが、利用者数が増えるにつれてエラーもかなりの数発生するようになってきて、手動で対応するのが辛く…
ことの始まり 結構大きめの複数modelで使うメソッドを作る必要があったから、concernにまとめちゃおうと思ったものの、メソッドの単体テストどうしよう… ということで、調べたら一応できた。 最近rspec周りの記事が多いなぁ modelのconcern作成 例えばuser m…
前回のメモ 前回の記事で、logファイルから該当するデータの抽出方法をまとめた。 正確には該当する行の抽出方法だけども。 抽出したデータを元にrailでデバッグする方法をメモしておく。 yasagori-programing.hatenablog.jp ファイルの読み込み grepを使っ…
ことの始まり 巨大なcontrollerを分割した際、共通で使うメソッドはconcernにまとめておこうと考え。 controllerの単体テストでわざわざconcernの内容も一緒にやるのは馬鹿らしいので、concernの単体テストをやりたくなったが、ちょっと困ったので色々調べた…
browser gem ボタンの表示・非表示の制御をcssのwidthでやることも可能だが、gemを使って判別させることも可能。 そこで使うのがbrowserというgem。 gem 'browser' コレでPCかスマホかの判別はもちろん、使用しているブラウザが何かも判別できる。 # スマホ…
callbackとは DBにデータを保存する前やバリデーションをかける前に処理を行うこと。 基本的にmodelの中に書かれる。 callbackにはcontrollerで持たせる必要はないが、保存処理などを行う前に必要な処理をまとめて書いておく。 実際の例 まずはOrderModelを…
例外処理とは 例外処理は通常のフローでエラーが発生した時にどうするか、ということ。 通常のsaveとかでは以下のようにif節でsaveできない時を指定できる。 def index @orders = Order.all end def new @order = Order.new end def create if @order.save r…
勉強する中で出てきたrailsメソッドを忘れないようにメモ。 最終的にはtopページの検索から楽に調べられるようにしたい。。。
発生経緯 railsアプリを作る時、Vue.jsを使うと基本的にrailsのデータはAPIで返すことになる。 ということは最後の出力をjson形式で返すことになるわけだが、ここでかなりつまづいたので忘れないようにメモしておく。 単体jsonデータの場合 class QuestionsC…
発生経緯 Vueの勉強がてらローカルで作っていたrailsアプリをherokuにデプロイしようとコマンドを叩いた。 $ git push heroku origin すると見たことのないエラーが発生 remote: -----> Detecting rake tasks remote: remote: ! remote: ! Could not detect …
PostgreSQL Accountの作成 仕事でPostgreSQLを使っていたので、Accountを作るところから。 $ sudo -u postgres psql PASSWORD= <PCのパスワード> postgres=# create role <username> with createdb login password '<password>'; # usernameとpasswordはあとで使う postgres=# \q $ rails new <appname> -d</appname></password></username></pcのパスワード>…
Ruby on Railsではデータを保存するのにモデルとテーブルを使用する。 最近やってなくて忘れてたから、忘備録がてらまとめておく。 モデルって データベースに登録されたデータをコントローラに渡したり、ビューで入力されたデータをデータベースに保存した…
自分のポートフォリオサイト、ブラウザで開いたときの表示がしょぼい。 ということで、ブラウザのタブの表示方法を修正。 タイトルの修正 通常、保存してあるフォルダ名がそのままブラウザのタブに表示されてしまう。 これじゃ見栄えが悪すぎるので修正。 今…
Herokuは無料で作成したファイルをデプロイできる優れたサービス。 Railsで作ったファイルもGitHubと連携すれば勝手にデプロイしてくれる。 ただ、DBを使う場合はそううまく行かない。 Herokuと連携させるところからまとめておく。 条件 Ruby on Railsでファ…
herokuでデプロイしてみたら、TOPぺーじの背景画像が表示されず。 ローカルサーバーでは問題なかったのになぜ? どこがおかしいのか確認してみる。 画像の保存場所 今回はDBに登録された画像ではなく、app/assets/imageに保存された画像を使用している。 実…
何気なく使ってたFont Awesome。 ゼロから導入しようと思った時にちょっと戸惑ったので、導入方法をメモ。 GEMの追加 まずはFont Awesomeを使うためのgemを追加。 config/routes.rb gem 'font-awesome-rails' gemを追加したのでアップデート $ bundle instal…
塾のカリキュラム的にrubyのバージョンをダウングレードして使っていた。 これからは新しいバージョンで進めようと思うので、rubyのバージョン変更のやり方をメモしておこう。
routeの作成 各ページのrouteを作成していく。
ファイルの作成 railsで新たにアプリを作るときにはこのコードを使います。