-
Rspec RubyにおけるBDD(振舞駆動開発)や動く仕様書(Spec)を実装するという思想で作られているフレームワークです。Rubyの開発文化にBDDを普及させました。また、多機能で複雑なDSL(ドメイン特化言語)で構成されます。現場…
-
システム開発においてテストコードを書くことは非常にめんどくさいですがいくつかのメリットがありますのでご紹介いたします。 これらのメリットを知ってゆくゆくはTDD(テスト駆動開発)等の開発手法も行えるようになると良いと思います。 テス…
-
Railsにはモデルからデータを取り出しさらにその中からデータを抽出するための便利なメソッドがいくつか標準で用意されています。 雛形 [crayon-5de98d5964945412748673/] 例 adminという名前のユーザ…
-
ここでご紹介するのはあくまでRailsでモデル同士の関連づけがあった場合に便利に扱う機能のご紹介であり絶対に関連づけがある際に定義しなければ動かないというわけではありませんが知っておくと非常に開発効率が上がる機能なので知識として知っておきま…
-
フィルタ(Filter)とは? Railsのコントローラの機能でアクションで処理をする前後で任意の処理を挟むことです。 コールバックとの使い分けは? アクションの前後で処理を追加できる機能としてはコールバックがあると思います。コールバ…
-
【Ruby on Rails】ログイン機能の実装
11.30
Railsではログインをすることはイコール「セッションを張ること」と捉えるのでSessionControllerというコントローラーが作成される場合が多いです。(なお、ここでいうセッションは、Web開発でよく使われるサーバで情報をメモリで保…
-
ユーザー管理機能を実装する方法としては下記の2種類が考えられます。 ユーザーが自ら登録してユーザー認証する方式 管理者が管理者機能でユーザー登録をしてアプリを利用させるようにする方式 ユーザーが自ら登録してユーザー認証…
-
生のパスワードをそのままDBへ保存してしまうとDBへの不正アクセスや不正コピー等でパスワードが漏洩してしまう可能性があります。そこで、ログイン時のパスワードの暗号化には「digest」という方式がよく取られています。 digestとは? …
-
コールバックとは? Railsのモデルには登録処理や削除処理等がありますがそのような処理の前後に任意の処理を挟むことができることです。JavaScriptでも引数として関数を渡して任意のタイミングで実行してもらうコールバックという仕組みが…
-
インスタンスメソッド save オブジェクトのDBへの登録更新を行う。登録時は検証を行う。 save! オブジェクトのDBへの登録更新を行う。登録時は検証を行う。 update 変更内容を引数で指定して更新を行う、saveやsa…