機能 ショートカットキー
リファレンス(参考URL)一覧へ移動 R
記事URLをMarkDownとしてコピー Ctrl+M
前のコードタグへ移動 Ctrl+←
次のコードタグへ移動 Ctrl+→
ヘルプを表示・非表示 H
Tips
- ショートカットキーは記事上で有効です。ヘッダー/フッター付近では機能しないことがあります。
- コードタグ移動機能がうまく動かないときは、Shift+F5でページを更新してみてください。
- このウィンドウを閉じるには、Hキーをもう一度押してください

Railsで挫折しないためのRailsの学習の進め方

プログラミング

いきなり全部理解しようとしない

プログラミング

Railsは僕や皆さんが思っている通り、すごく複雑で、難しいです。実際。
それをすぐに理解しようとしないでください。

具体的には、

Railsで覚えておくべきコマンドは、

rails g controller dev
rails g model user name:text
rails c

これだけです。

そして、皆さんがRailsを触る上で、見るべきファイルは、

app/controllers/dev_controller.rb
app/views/dev/index.html.erb
config/routes.rb

この3つだけです。

まずはここからです。いきなりCRUD実装しようとか考えない方が懸命です。

あとは、最初のアプリ作成で使用する、rails newですが、これもたくさんオプションがありますね。

少し詳しい人は、「どうしてもMysqlで!」と思うかもしれません。しかし、それはまじでNGです。

SqliteとMysqlで違うのが、config\database.ymlを書き換えるかどうか、だけだと思っていたら大間違いです。
他にも違いはありますし、何かあったときの対処も違います。

モデルを使う上で、データベースが孤立しているとどうしても学習しづらいです。
僕も最初からMysqlでやろうとして、挫折しました。
SQLは使えましたし、RubyでMysqlのマッパーを使ったりもしてたので、できるだろうと考えていたのです。しかし…。

この3つのファイルだけでも、ユーザーからデータを受け取り、それをRubyで加工して出力する、っていうウェブアプリの基本はできます。
いわゆるシングルページアプリケーションです。
これだけで、Ruby自体でできることは全て可能ですので。どんな複雑なスクリプトでも、ウェブアプリとしてユーザーに操作してもらうことができます。
ここからは、Ruby関係なしに、ウェブサイトの構成の問題、つまり、Railsの問題になります。

Railsチュートリアルをやろうとしない

プログラミング

Railsチュートリアルを初心者に勧める人は結構います。
しかし、僕は敢えておすすめしません。僕も3章まで初心者の頃に読み進めていますが、とにかく無駄な説明が多い。
あったら便利な知識だし、必要です。けど、それをいちいち読んで理解してから進んでたら疲れます。結果、進捗が遅くなり、モチベーションが続かなくなります。

プログラミングにしてもRubyにしてもRailsにしても、いきなり網羅的に理解してからはじめるような類のものではないですよね?普通免許じゃあるまいし。
一気に全てを理解するには、内容が多すぎます。
こういうものは、自分でやりたいことをやっていって、分からないことが出てきたらそこで初めて調べるんです。それの積み重ねです。

これは僕の方法なので、合う合わないはあると思いますので、それはご自分で判断されてください。
ちなみに僕はADHDです。

免責

プログラミング

この記事は半年以上前に書かれたものをそのまま投稿したものです。矛盾したこととか変な事を言っている場合がありますが、全く参考にならないということはないだろうという考えのもと投稿を決めた記事になります。

この記事で欲しい情報が見つからなかった方へ

この記事の更新情報がある場合があります。
この記事は以下の記事とも関連性があると思われます。

Ubuntu 16.04 Rails 5にpostgresSQLをセットアップ
RailsのpostgreSQLにローカルネットワーク(LAN/外部)から接続したい
Rails 5 現在のビューの絶対パス/相対パスを出力
Rails 5 Missing host to link to! Please provide the :host parameter, set default_url_options[:host], or set :only_path to true
Rails Ahoy
Rails ポート3000以外でサーバーを実行`rails s`したい
Rails 5 Deviseモデルでrollback transactionエラー


管理人の方針で、既存の記事の編集はせず、新しい情報や大きな既存情報の更新があった場合には、新しい記事として公開することになっています。
当記事で欲しい情報が見つからなかった・解決に至らなかった場合、これらのリンクがお役に立てるかも知れません。

どうやってこの関連記事を生成しているの?
この機能のPHPソースコード(2500行)

コメントを残す

Close Menu