■
只今第10章
Ruby on Rails チュートリアル:実例を使って Rails を学ぼう
Railsは、form_for(@user)を使用してフォームを構成すると、@user.new_record?がtrueのときにはPOSTを、falseのときにはPATCHを使用します。
rails賢い。
JSON serverとダミーJSONの作成方法
サーバーサイドのAPI実装がまだできていない場合に使用できる。
www.webprofessional.jp
route.rbのnamespaceとmoduleととscopeの違い
namespace
URL、controller格納フォルダ共、指定のパスになる。
module
controllerの格納フォルダだけ、指定パスになる。
scope
URLだけ、指定のパスになる。
参考 qiita.com
rails tutorialメモ
8.1.1 Sessionコントローラ
http://railstutorial.jp/chapters/log_in_log_out?version=4.2#sec-sessions_controllert
ログインフォーム
newアクションで処理 createアクションにPOSTリクエストを送信→ログイン destroyアクションにDELETEリクエストを送信→ログアウト $ rails generate controller Sessions new newアクション生成で対応するviewも生成される。 createやdestroyには対応するビューが不要なのでnewだけ指定している。
HTTPリクエスト | URL | 名前付きルート | アクション | 用途 |
---|---|---|---|---|
GET | /login | login_path | sessions#new | 新しいセッションのページ(ログイン) |
POST | /login | login_path | sessions#create | 新しいセッションの作成(ログイン) |
DELETE | /logout | logout_path | sessions#destroy | セッションの削除(ログアウト) |
以下で全ルーティングのリストが表示される。
$ rake routes
ActiveRecord操作
user = User.first user.email = 'aaaaa@example.com' user.save! #更新失敗時に、user.saveはfalseを返し、 #user.save!は例外を発生させる。
8.2.1 log_inメソッド
sessionメソッド 一時的なcookies
cookiesメソッド 永続的なcookies
「||=」とは何か?
以下の要領で覚える。
@fooがnil(false)ならば"bar"が代入される。
x = x + 1 => x += 1 x = x * 3 => x *= 3 x = x - 5 => x -= 5 @foo = @foo || "bar" => @foo ||= "bar"
認証機能の完成に必要なのは、一口に言えばログインステータスとユーザーIDに基いてページへのアクセスを制限することだけです。
ES6におけるthis
ES6を使うに当たって、thisの挙動は注意する必要がある。
.bashrcの変更設定をすぐに反映させる
基礎的なことだよワトソン君、だけど忘れてしまったのでメモ。
$source ~/.bashrc
または
$. ~/.bashrc