0

私はrubyとrubyonrailsの初心者なので、なぜこのコードが機能しないのか疑問に思いました。(私はPHP://から来ました)。

    class SayController < ApplicationController
  def hello
        # function for user data

        if ( params[:username] != nil && params[:password] != nil )
            if ( params[:username].length > 3 && params[:password].length > 3 )
                @err = 0
            else
                @err = 1
            end

            if ( @err == 1 )
                @messege = "Hey, yor username Must be longer that 3 charasters."
            else
                @messege = "Ok, We will check your user data"

                result = Users.count( :username => params[:username], :password => params[:password] )

                    if ( result == 1 )
                        @l = "Hey, #{params[:username]}."
                     else
                        @l = "Users data was wrong."
                     end 
            end
        else
            @messege = "Please fill in the text fields."
        end
  end

  def goodbye
  end

end

およびエラー:

 ArgumentError in SayController#hello

不明なキー:ユーザー名

Rails.root:/ home / cdr/perkuアプリケーショントレース| フレームワークトレース| フルトレース

app / controllers / say_controller.rb:17:in `hello '

リクエスト

パラメーター:

{"username" => "asdasdasdasdaaasdfda"、 "password" => "[FILTERED]"}

セッションダンプを表示

環境ダンプの応答を表示する

ヘッダー:

なし

4

1 に答える 1

2
  result = Users.where("username = ? and password = ?",
     params[:username], params[:password] ).count
于 2012-10-23T15:08:27.260 に答える