メール属性を持つモデルユーザーがいるとします。self.email と email を単独で使用できるいくつかのチュートリアルをチェックインしました。両方の違いは何ですか?
質問する
305 次
2 に答える
2
Userモデル内のインスタンスメソッドを使用している場合は、どちらも機能しますがemail
、それ自体が暗黙的なスコープ定義です。つまり、アプリケーションはローカルemail
変数を検索し、次に電子メールメソッド/属性を検索します。self.email
ローカル変数の検索を明示的にスキップします。
于 2013-03-22T11:21:57.550 に答える
1
User クラスを使用している場合、さまざまな方法で電子メールにアクセスできます。
self.email
ユーザースコープにいるときa_user.email
ユーザーを指定した場合email
あなたが User クラスにいるとき。これは、User クラスのすべてのメソッドに有効です。@email
、email
関数によって返される変数attributes[:email]
ActiveRecord 属性。
このメソッドはすべて、ActiveRecord モデルによって自動的に生成されます。詳細については、ドキュメントを参照してください。
于 2013-03-22T11:27:42.350 に答える