webapp2_extras.appengine.auth.models.User
を基本的に拡張するサービスを利用していgoogle.appengine.api.users model
ます。現在、アプリケーションにカスタム ユーザーが登録されており、多くのカスタム フィールドがあります。問題は、さまざまなカスタム フィールドを使用してすべてのユーザーをフィルタリング/(マルチ フィルター) したいことです。例えば:
ユーザーモデルには2つのフィールドがis_active
ありactivation_key
、これらのフィールドを使用してそれらをフィルタリングしたい.例:
from google.appengine.api import users
act_key = 'hw-2j38he63u83hd6hak3FshSqj3TGemn9'
user = users.all().filter('is_active =', False).filter('activation_key =', act_key).get()
if user:
return True
else:
return False
カスタム フィールドを使用してユーザー モデルをフィルタリングする最善の方法は何ですか?
編集:
次のことも試しました:
from webapp2_extras.appengine.auth.models import User
query = User.query().filter('is_active =', False)
print query
しかし、これは次のようにエラーを発生させます:
Traceback (most recent call last):
File "/opt/google_appengine_1.6.4/google/appengine/ext/admin/__init__.py", line 320, in post
exec(compiled_code, globals())
File "<string>", line 6, in <module>
File "lib/ndb/query.py", line 968, in filter
raise TypeError('Cannot filter a non-Node argument; received %r' % arg)
TypeError: Cannot filter a non-Node argument; received 'is_active ='