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
Knockout.jsのViewModel間でデータのやりとりを行う方法
Knockout.jsで別々のViewModel間でデータのやりとりを行う方法がわからなかったので
調べた所、上記のサイトに各種方法が書いてあった。
"ko.subscribable"というfunctionがnativeであるけれど詳しいドキュメントは
ないらしい。
このfunctionを使う方法もあるが、"knockout-postbox"という拡張を使うと
もう少しシンプルに書ける。
サンプルとして記載されていたコードが動かなかった(jsfiddleでの外部コード読み込みが"https"のみ対応となったため)ので自分でCodePenに書いてみた。
See the Pen knockout.js multiple view model 2(Pub-sub) by tamoriinu (@yokoyama) on CodePen.