python - Retrieving Submitted Greetings in the Tutorial -


i'm working though gae tutorial , i'm getting following error.

file "/users/cparrish/bin/guestbook/guestbook.py", line 62, in greeting in greetings: nameerror: global name 'greetings' not defined

so think problem here somewhere.

 greetings_query = greeting.query(                      ancestor = guestbook_key(guestbook_name)).order(-greeting.date)      greeetings = greetings_query.fetch(10)      greeting in greetings:         if greeting.author:             self.response.write(                     '<b>%s</b> wrote:' % greeting.author.nickname()) 

which lines 58 - 66 i'm wondering if else can see i'm apparently missing here.

full code base below.

import cgi  import urllib   google.appengine.api import users google.appengine.ext import ndb  import webapp2  main_page_footer_template = """\     <form action="/sign?%s" method="post">         <div><textarea name="content" rows="3" cols="60"></textarea></div>         <div><input type="submit" value="sign guestbook"></div>     </form>      <hr>      <form>guestbook name:         <input value="%s" name="guestbook_name">         <input type="submit" value="switch">     </from>      <a href="%s">%s</a>       </body> </html> """  default_guestbook_name = 'default_guestbook'  # set parent key on 'greetings' ensure in same # entity group. queries across signle entity group consistent.  # however, write rate should limited -1/second.   def guestbook_key(guestbook_name="default_guestbook_name"):     """ constructs datastore key guestbook entity guestbook_name. """     return ndb.key('guestbook', guestbook_name)   class greeting(ndb.model):     """models individual guestbook entry author, content, , date. """     author  = ndb.userproperty()     content = ndb.stringproperty( indexed = false )     date    = ndb.datetimeproperty( auto_now_add = true )  class mainpage(webapp2.requesthandler):      def get(self):         self.response.write('<html><body>')         guestbook_name = self.request.get('guestbook_name', default_guestbook_name)          # ancestor queries, shown here, consisten high         # replication datastore. queries span entity groups         # consisten. if omitted ancestor query there         # slight chance greetings had been written not         # show in query.          greetings_query = greeting.query(                          ancestor = guestbook_key(guestbook_name)).order(-greeting.date)          greeetings = greetings_query.fetch(10)          greeting in greetings:             if greeting.author:                 self.response.write(                         '<b>%s</b> wrote:' % greeting.author.nickname())             else:                 self.response.write('an anonymous person wrote:')             self.response.write('<blockquote>%s</blockquote' %                                 cgi.escape(greeting.content))              if users.get_current_user():                 url = users.create_logout_url(self.request.uri)                 url_linktext = 'logout'             else:                 url = users.create_login_url(self.request.uri)                 url_linktext = 'login'              # write submission form , footer of page             sign_query_parms = urllib.urlencode({'guestbook_name': guestbook_name})             self.response.write(main_page_footer_template % (sign_query_parms, cgi.escape(guestbook_name), url, url_linktext))  class guestbook(webapp2.requesthandler):          def post(self):             # set same parent key on 'greeting' ensure each getting             # in same entity group. queries across single entity group             # consistent. however, write reate sing entity groupo             # should limited ~1/second.                  guestbook_name  = self.request.get('guestbook_name',                                                  default_guestbook_name)             greeting        = greeting(parent=guestbook_key(guestbook_name))              if users.get_current_user():                 greeting.author = users.get_current_user()              greeting.content = self.request.get('content')             greeting.put()              query_params = {'guestbook_name': guestbook_name}             self.redirect('/?' + urllib.urlencode(query_params))   application = webapp2.wsgiapplication([     ('/', mainpage),     ('/sign', guestbook), ], debug=true) 

there 3 e's in assignment of greeetings.

greeetings = greetings_query.fetch(10)  greeting in greetings: 

one of these es not others, 1 of these es doesn't belong...


Comments

Popular posts from this blog

python - How to create a legend for 3D bar in matplotlib? -

java - Multi-Label Document Classification -

php - Dynamic url re-writing using htaccess -