10
13

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

Ruby on RailsAdvent Calendar 2017

Day 11

[初心者向け] 実務開始の前に知っておきたいRailsのこと

Last updated at Posted at 2017-12-10

この投稿は、チュートリアルを終えて実務に入る前の人に知っておいて欲しいことをまとめています。
チュートリアルは終えている前提なので、コードではない部分を補完するようにしています。
ベンチャー企業の複数あるうちの1サービスくらいの規模感のアプリケーションを前提としています。
社内メンバー宛なので偏りがあるかもしれないですが、みなさまの役にも経てば幸いです。

開発スタイル

rails consoleとlogは常に表示しておきましょう

コンソール.png
こんな感じで、コンソールを縦に割っておくと両方見れていいと思います
(ログとコンソールをセットにするか、エディターとコンソールをセットにするかは状況によると思います)

エディターを整えよう

Railsはルールに則ってファイルが細かく分割されていますので、ファイル間を移動することが多いです。
少なくともファイル間をジャンプできる機能だけは整えておいた方がいいと思います。
自分は rails.vimを使ってますが、 ctagsを使えばsublimeなどのエディタにもジャンプ機能をつけれます

エラーの見方

エラー画面.png
Rails開発してるとよく見るエラー画面。「一番最初にどこを見ますか?」と聞かれたら、黄色い枠で囲んだところです。
この画面が出ていて、『undefined local variable or method』と書いているのに「なぜエラーが出てるのかわからない」と言われることが多いです。
英語ですが、ちゃんと読みましょう。「aという変数、メソッドなどが定義されてません」って書いてるので、aを定義してあげればいいです(だいたいこのエラーの場合はtypoですが)
paramsを参照している場合は、Request欄のparametersも見ましょう。値が正しくわたってない(intだと思ってたらstringが渡ってる)のもよくあるミスです。

Gemの種類

たくさんありますが、メディア系のサイトを作るときによく使うものをいくつか
載せてないものもここら辺で探したり、「rails gem (やりたいこと)」でググればいい感じのまとめが見つかります
http://bestgems.org/

production

kaminari ... paging
paperclip, carrierwave ... 画像アップロード
devise ... 認証周りをいい感じにしてくれるやつ
whenever ... cronの管理
delayed_job ... 非同期処理

development, test

rspec ... テスト
factory_girl ... テスト時にテストデータ作るやつ
guard ... ファイルを監視して、編集をhookにスクリプト走らせたりするやつ

見ておいたらいいと思うページ

便利メソッド集1
便利メソッド集2
モデルのフック
コントローラーのフィルター

[初心者向け] 実務開始の前に知っておきたいシリーズ

[初心者向け] 実務開始の前に知っておきたいSpreadSheetのこと
[初心者向け] 実務開始の前に知っておきたいAnsibleのこと
[初心者向け] 実務開始の前に知っておきたいGoogleAnalyticsのこと
[初心者向け] 実務開始の前に知っておきたいWordPressのこと

10
13
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
10
13

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?