title: google app engine error - TypeError: this constructor takes no arguments
body: <p>traceback </p>
  
  <pre><code>  Traceback (most recent call last):
   File "/base/data/home/runtimes/python27/python27_lib/versions/third_party/webapp2-2.5.2/webapp2.py", line 1535, in __call__
      rv = self.handle_exception(request, response, e)
    File "/base/data/home/runtimes/python27/python27_lib/versions/third_party/webapp2-2.5.2/webapp2.py", line 1529, in __call__
    rv = self.router.dispatch(request, response)
  File "/base/data/home/runtimes/python27/python27_lib/versions/third_party/webapp2-2.5.2/webapp2.py", line 1278, in default_dispatcher
  return route.handler_adapter(request, response)
  File "/base/data/home/runtimes/python27/python27_lib/versions/third_party/webapp2-2.5.2/webapp2.py", line 1101, in __call__
    handler = self.handler(request, response)
   TypeError: this constructor takes no arguments
  </code></pre>
  
  <p>html code </p>
  
  <pre><code>   &lt;form name="input" action="/addData" method="post" autocomplete="off"&gt;
                &lt;div&gt;
                    &lt;label &gt; Abbr&lt;/label&gt;
                    &lt;input type="text"  name="abbr" autocomplete="off" maxlength="20"/&gt;
                &lt;/div&gt;
                &lt;div&gt;
                    &lt;label &gt; Desc&lt;/label&gt;
                    &lt;input type="text"  name="desc" autocomplete="off" maxlength="200"/&gt;
                &lt;/div&gt;
                &lt;div&gt;
                    &lt;button type="submit" &gt;Add Data Entry &lt;/button&gt;
                &lt;/div&gt;
      &lt;/form&gt;
  </code></pre>
  
  <p>app.yaml</p>
  
  <pre><code>version: 1
  runtime: python27
  api_version: 1
  threadsafe: yes
  handlers:
  - url: /favicon\.ico
  static_files: favicon.ico
  upload: favicon\.ico
  - url: .*
  script: main.app
  libraries:
  - name: webapp2
  version: "2.5.2"
  - name: MySQLdb
  version: "latest"
  - name: jinja2
  version: "latest"
  </code></pre>
  
  <p>python file --></p>
  
  <pre><code> JINJA_ENV = jinja2.Environment(loader=jinja2.FileSystemLoader(os.path.dirname(__file__)),
   autoescape=True, extensions=['jinja2.ext.autoescape'])
  
  
   class AddData:
    @login_required
    def post(self):
      abbr = self.request.get('abbr')
      desc = self.request.get('desc')
  
  app = webapp2.WSGIApplication([
  ('/addData', AddData)
  ], debug=True)
  </code></pre>
  
  <p>I am mostly trying to replicate the google hello world example for webform, but I can't seem to understand what the problem is.</p>