From: OHASHI, Norikazu Date: Thu, 21 Mar 2019 23:56:10 +0000 (+0900) Subject: セッション利用するように修正 X-Git-Url: http://www.wald-der-katze.sakura.ne.jp/git/gitweb.cgi?a=commitdiff_plain;h=f6eb5d5bf5f48a02c78e2cd137d9e206f66f85eb;p=book_server.git セッション利用するように修正 --- diff --git a/sinatra/app/controllers/web_gui.rb b/sinatra/app/controllers/web_gui.rb index fc2bc8f..32a38df 100644 --- a/sinatra/app/controllers/web_gui.rb +++ b/sinatra/app/controllers/web_gui.rb @@ -11,6 +11,10 @@ class WebGui < Sinatra::Base set :views, Proc.new {File.join(root, "views")} set :haml, :format => :html5 + use Rack::Session::Cookie, + :expire_after => 300, + :secret => 'change' + #stylesheet get '/style.css' do scss :'scss/style' @@ -35,7 +39,8 @@ class WebGui < Sinatra::Base begin id = UserAccount.createAccount(name, full_name, email, passwd) - redirect "/user_home/#{id}" + session[:userId] = id; + redirect "/user_home" rescue UserAccount::AlreadyInstanceError status 406 "すでに登録済みのアカウント名が指定されています。" @@ -52,7 +57,8 @@ class WebGui < Sinatra::Base begin id = UserAccount.checkPasswd(name, passwd); - redirect "/user_home/#{id}" + session[:userId] = id; + redirect "/user_home" rescue UserAccount::NotfondInstanceError, UserAccount::AuthenticationError status 401 @@ -60,8 +66,8 @@ class WebGui < Sinatra::Base end end - get '/user_home/:id' do - id = params[:id] + get '/user_home' do + id = session[:userId] user = UserAccount.getUser(id) @id = id @username = user.full_name diff --git a/sinatra/app/models/database.yml b/sinatra/app/models/database.yml.sample similarity index 100% rename from sinatra/app/models/database.yml rename to sinatra/app/models/database.yml.sample diff --git a/sinatra/app/views/layout.haml b/sinatra/app/views/layout.haml index f0e15f9..9156f3c 100644 --- a/sinatra/app/views/layout.haml +++ b/sinatra/app/views/layout.haml @@ -21,15 +21,16 @@ #{user_name} 書籍一覧 #center #sidebar - %a{ :href => "/user_home/#{id}" } + %a{ :href => "/user_home" } ホーム %br - %a{ :href => "/book_list/#{id}"} + %a{ :href => "/book_list" } 書籍一覧 %br - %a{ :href => "/user_info/#{id}"} + %a{ :href => "/user_info" } ユーザ情報 %br + %a{ :href => "/logout" } #main= yield #foot %p diff --git a/sinatra/app/views/scss/style.scss b/sinatra/app/views/scss/style.scss index c42922b..e8be823 100644 --- a/sinatra/app/views/scss/style.scss +++ b/sinatra/app/views/scss/style.scss @@ -1,3 +1,9 @@ +body { + color:#444; + margin:auto; + max-width:45em; +} + ul { text-align: left; }