railsメモ
こんにちは
一ヶ月ほど前(かな?)からrailsをやり始めたので、テストも終わったことだしメモを書きます
とりあえず一ヶ月間触った感想
すごい便利だなあと思いました、作業を省けるところはrailsがやってくれるし、うれしかったですが、なるべく基礎から学びたかったのでscaffoldとかはつかいませんでした
あと楽しいです、フロントも組み立てる必要があるのですが(webアプリなので)それに比べたら圧倒的に楽しいです。
ファイル構造について
今まで使ったのは
/app
- /assets
- /controllers
- /views
/config
- /routes.rb
/db
です(インデントの付け方がわからず見難くて申し訳ないです)
assetsについて
ここには画像やJSやCSSをおきます。
「CSSとかどこにおいてもいいじゃん」とか思っていましたが、本番環境では通用しないようです。(こわいね)
ちなみにこの辺のディレクトリは
/assets/stylesheetsとかでいけます。
controllerについて
ここで大体の処理を書きます。
今のところの印象ですが、だいたい関数に書くイメージがあります
できること(いままでやったこと)
- 一般的な処理(ふつーのプログラミングをrubyで書ける)
- 値の受け取り(今まで使ったのは、例えば/user/0とあったら0を読み込むとか、formから値を受け取るとか)
- 移動(リンクの移動、htmlの描画)
ですね、大体ここが大事です。
要は、ここでRubyが書けるよ★ガンバルビィ(ここで例の黒澤ルビィの画像が入る)
formについて
formは割と躓くところが多かったのでメモします
formの関数的なもの
- = form_for @user, :url => {:controller => 'user_show', :action => 'update'} do |f|
(controllerのほうで@user=User.newとしてuserを宣言していることが前提です)
これは、@userという変数にいれ、(@というのはグローバル変数だよってこと)、controllerはuser_showっていうもの、アクションは適当な名前(多分処理後の関数名のほうがいいのかな?)にし、for i in 0..5 |f|のような感じでfにいろいろ動作させるとうまくいくよ、的な感覚で行っています(雑ですみません(実は深くまでは理解していない)
これが終わると、postといって受け取った値を渡す作業に入ります。routes.rbでpost 'user_show/update'=>'user_show#update'のようにしましょう(中身の名前は変えてください)
views
ここでhtml書けます。
htmlも、Rubyの場合はhtml.erbとかいってscssのhtml版のruby(つまりhtmlだけどruby書ける)みたいなのがあります
railsで初めてhtmlというニセプログラミング言語に触れたのですが、なんか吐き気しかしません。
無駄なところ多いし、無駄な割には可読性ないし、最悪です。
twitterにいる方からのおすすめでhamlを使い始めて、今はそれで落ち着いてます()
routes.rb
ここでリンクと処理の組み立てができます。
例:/user/0ってやったら0がidのuserを表示的な
あと先ほどお伝えしたようにpostなど値の受け渡しができます
db
データベースの処理は大抵ここでかきます、passwordとかの暗号化もBCrypt先輩のお力によってできたのですが、
いつか暗号化も自分で実装したい!!w
です。
がんばります!