2016-07-11 10 views
2

私が取り組んでいるAPIアプリケーションの一部として、呼び出しに必要な認証があります。私はヘッダ基本認証を含むcurlコマンドで最も基本的な呼び出しを試みています。ActiveRecord :: Base.connection.execute(sql)各データが返されない

unless credential = cache.fetch("credential::#{auth.credentials[0]}:#{Digest::MD5.hexdigest(auth.credentials[1])}") 
    sql = "SELECT * FROM credentials WHERE username = '#{auth.credentials[0]}' AND passwd_hashed = '#{Digest::MD5.hexdigest(auth.credentials[1])}'" 
    ActiveRecord::Base.connection.execute(sql).each do |row| 
    credential = row 
    end 
end 

これはどんな結果を返すされていないいくつかの理由:ユーザーが任意のセキュアコールにアクセスしようとしたときに呼び出される認証ブロックでは、次のコードがあります。私は、このブロックから出力されたSQLを取って、それが目的の行を返すpostgresで走った。私は自分の環境をテストして、自分が正しいデータベースに接続していることを確認しました。それ以外では、問題の内容や診断方法がわかりません。どんな助けもありがとう。

このブロックからどのようにエラーを返すことができるかについてのご意見も大いに役に立ちます。例外処理を追加しようとしましたが、正しい構文が得られないようです。

答えて

0

rails consoleで実行できますか?結果はありますか?

result = ActiveRecord::Base.connection.execute(sql) 
result.to_a 
関連する問題