Sinatra、Datamapperで構築している基本的なRubyアプリがあり、OAuthを使用したユーザー認証があります。Oauthサービスからデータを受信すると、新しいユーザーのレコードをsqlite3データベースに保存します。
方法がわからないのは、ユーザーレコードがユーザーデータベーステーブルにまだ存在しないことを確認する方法です。ユーザーの一意のID(uid)を使用して、uidが既に保存されているかどうかをクロスチェックできますが、これをどこで行うかがわかりません。
2つのクラスと/callbackルートがあります。Userクラスはdbモデルであり、Authenticationクラスには、OAuthに接続するためのさまざまなメソッドと、Authentication.saveメソッドが呼び出される/callbackルートがあります。
Authentication.saveメソッド内の既存のレコードをチェックして、ブール値などを返す必要がありますか?Authentication.existsのような新しいメソッドをAuthenticationに作成しますか?(そしてそれはどのように見えるでしょうか?)または/コールバックルート内をチェックする必要がありますか?
これが100%明確でなかった場合は、お詫び申し上げます。問題を説明するのに苦労しており、Rubyの初心者です...