title: Selecting based on __key__ (a unique identifier) in google appengine
body: <p>Again i have</p>
  
  <pre>
  
  """ A site message """
  class Message( db.Model ) :
    # from/to/ a few other fields
    subject = db.StringProperty()
    body = db.Text()
  
    sent = db.DateTimeProperty( auto_now_add=True )
  </pre>
  
  <p>Now I'm trying to pick out a Message by its KEY.  I saved off the key earlier and planted it in an HTML form.  The result is a clickable link that looks something like</p>
  
  <pre>
  &lt;a href="/readmessage?key=aght52oobW1hZHIOCxIHTWVzc2FnZRiyAQw"&gt;click to open&lt;/a&gt;
  </pre>
  
  <p>So then I run this GQL query:</p>
  
  <pre>
  gql = """select * from Message where __key__='aght52oobW1hZHIOCxIHTWVzc2FnZRiyAQw'"""
  </pre>
  
  <p>But its not working because</p>
  
  <blockquote>
  BadFilterError: BadFilterError: invalid filter: __key__ filter value must be a Key; received aght52oobW1hZHIOCxIHTWVzc2FnZRiyAQw (a str).
  </blockquote>
  
  <p>I'm totally missing something here, and that is <b>how do you put an <em>object</em> into a GQL query string.. and not have Gql parser complain of that it is a string?</b></p>