ウェブサイトとパラメータ

2502 ワード

私が私の日を始める前に毎朝、コーヒーを作り、私の電話を暖めて、Chicagotribuneを訪問します.COM .私のコーヒービールと私の家がおいしいバニラ渦巻香りでいっぱいになっている間、私は眠そうに地元のニュースで最新を得ます.では、どうやって動くのですか?どのように、私はこのような簡単で便利な方法でChance the Snapperについて読むことができますか?

ウェブサイトの訪問の基本
私のSinatraプロジェクトに取り組むことは、インターネットがどのように働くかについてのベースの理解を得るすばらしい導入でした.
ブラウザにタイプ1ユーザー(クライアント)タイプURL.
ステップ2サーバは要求を受け取り、それを処理して、応答を送ります.
ステップ3あなたのブラウザはそのレスポンスを受け取り、ユーザーに示します.
TLDr :ブラウザは要求を送ります、そして、サーバーは応答を送ります.
ハイパーテキスト転送プロトコル( HTTP )
Web上でデータを転送するために使用されるプロトコルです.
パラメータ
パラメータはhashと、ユーザーが入力するデータをキャプチャして使用するために使用される強力なツールです.
リクエストメソッド( HTTP動詞)
識別されたリソースに実行される望ましい行動を示します.
ルート
ルーティングは、あなたのアプリケーションのリクエストに応じて、要求のパスとHTTP動詞で使用される方法です.
[ HTTP動詞]
[このルートが要求されたときに実行するコードブロック]
終わり
すべてをまとめる
post '/users' do
        @user = User.new
        @user.username = params[:username]
        @user.email = params[:email]
        @user.password = params[:password]

        if @user.save
            session["user_id"] = @user.id 
            redirect '/'
        else
            erb :'users/new.html'
        end
 end
上記は私のSinatraプロジェクトからのコードの断片です.それは、ユーザーコントローラ(良いOLE MVC)の一部です.ユーザーが正常にプログラムの登録フォームに指示された後、フォームがいっぱいにされているし、それらをクリックして';保存';コードは、遊びに来ると述べた.POSTメソッド内では、ユーザーがパーソナライズされたプロファイルを保存できるようにするコードを記述しました.これは、ユーザー入力をキャプチャし、そのデータをハッシュとして保存するパラメータを作成することによって可能でした.ユーザーが登録フォームを保存したら、その情報はプログラムデータベースに保存されます.保存されたユーザー入力の便利なパラメータのおかげで利用可能になりました.
もし私たちが特定のユーザーログをチェックアウトしたいと思うなら、以下のコードはそれを許すでしょう.
    get '/logs/:id' do
        @log = current_user.logs.find_by(id: params[:id]) # ensures that you only have access to your log and nobody elses
        # find_by over find
        erb :"logs/show.html"
    end
上記のGETメソッドでは、ログだけでなく、ユーザーによってもルートできます.それはどうしてですか.ルーティングパラメタでよく-我々が表示したいオブジェクトに基づいて変わるURLの部分.
結論として、私はこのプロジェクトに取り組んで楽しい一トンを持っていたし、学習曲線のビットは、まだ私はまだ電源を入れている間、私はコーディングと学習方法を学習のすべての第二を楽しんでいる.
Github Repo