他の App Engine Python クラスから利用したいユーティリティ クラス メソッドがあります。
def parse_query_string_paramter(self, paramter, default=None):
if self.request.get(paramter):
# ...
以下のように別のクラスからこのメソッドを呼び出すときに、元のリクエストのコンテキストを渡す方法がわかりません。
import webapp2
from utilities import Utility
class Search(webapp2.RequestHandler):
def get(self):
utility = Utility()
search_query = utility.parse_query_string_paramter('q')
# ...
以下に返されるエラーは、どこから始めればよいかわかりませんが、Pythonic ソリューションには意味があります。
File "~/utilities.py", line 112, in parse_query_string_paramter
if self.request.get(paramter):
AttributeError: 'NoneType' object has no attribute 'get'
アップデート:
Tim のソリューションのおかげで、以下の更新されたコードが機能するようになりました。
def parse_query_string_paramter(self, context, paramter, default=None):
if context.request.get(paramter):
# ...
self
以下のように、呼び出し元のクラスから渡します。
search_query = utility.parse_query_string_paramter(self, 'q')