■Rails3で資格試験勉強システムを作る
◯ログイン機能
参考にした
http://d.hatena.ne.jp/koyonote/20110422/1303474235
→編集するファイル
app/views/users/_form.html.erb
<%= radio_button_tag カラム名, サーバに送る値, options = {}) %>表示名称
"サーバに送る値"は選んだ時にtrueとかfalseになるようにする
optionsはtrueになるかfalseになるような式を入れる。
・Sessionsコントローラーの「new.html.erb」を編集して、ログインフォームを作ります。
※sessionのコントローラーってことに注意、userのではない
→「new.html.erb」のファイル名は変更しない
レイアウトの変更
→これを編集
「layouts/application.html.erb」
・route.rb
元々のこいつらはコメントアウト
# get "sessions/new" # get "sessions/create" # get "sessions/destroy"
これはコメントアウトしていいかわらかないので放置??
resources :users
・◯◯_urlが意味分からんと思ったが、
redirect_to hoge_url
http://d.hatena.ne.jp/sgtakeru/20091118/1258528315
・ページの一番最後にあるのをbefore_filterのそのままだとどのページ(index)にもいけなくなる
before_filter :authorize, :only => [:create, :destroy]
・SessionsController(sessions_controller.rb)のnewアクションを修正する。そうしないと、手でhttp://localhost:3000/loginに入ったときにログイン画面になってしまいます。
def new if session[:user_id] redirect_to users_url end end
・createのアクションが違うようだ
→ユーザ名だけあってればそのままいっちゃう
N/A
def create if user = User.find_by_name(params[:name]) if user.password == params[:password] session[:user_id] = user.id redirect_to users_url end else redirect_to login_url, :notice => "Invalid!" end end
OK
def create if user = User.find_by_name(params[:name]) and user.password == params[:password] session[:user_id] = user.id redirect_to users_url else redirect_to login_url, :notice => "Invalid!" end end
◯Rails 3.0 + jQuery をする
http://d.hatena.ne.jp/spitfire_tree/20101114/1289707759
◯ルーティング定義
http://d.hatena.ne.jp/willnet/20100424/1272119369
◯ I18n について
http://d.hatena.ne.jp/willnet/20100430/1272618929
◯CBT画面の参考
http://yakujuku.com/cbt/cbt04.html
http://bken.sgec.or.jp/student/practice.html