Я новичок в python и Google App Engine. Я пытаюсь реорганизовать этот код из блога Nick Johnson для использования webapp2 и python 2.7. http://blog.notdot.net/2009/10/Blogging-on-App-Engine-part-1-Static-servingКак исправить этот TypeError?
В любом случае, когда я запускаю код ниже, я получаю эту ошибку.
TypeError: get() takes exactly 2 arguments (1 given)
Я думаю, что это может иметь какое-то отношение к переменной пути, которая не определена, но я не знаю, как ее определить.
import webapp2
from google.appengine.ext import webapp
from google.appengine.ext import db
class StaticContent(db.Model):
body = db.BlobProperty()
content_type = db.StringProperty(required=True)
last_modified = db.DateTimeProperty(required=True, auto_now=True)
def get(path):
return StaticContent.get_by_key_name(path)
def set(path, body, content_type, **kwargs):
content = StaticContent(
key_name=path,
body=body,
content_type=content_type,
**kwargs)
content.put()
return content
class MainHandler(webapp2.RequestHandler):
def get(self, path):
content = get(path)
if not content:
self.error(404)
return
app = webapp2.WSGIApplication([('/', MainHandler)],
debug=True)
@systempuntoout дал вам ответ, но я бы не назвал это метод получения, как это и использовать его в обработчике get. это может вызвать проблемы. – aschmid00
Вы удалили почти любую полезную информацию из stacktrace. Пожалуйста, включите полную стеку в будущем, а не только последнюю строку. –