query = myModel.all().filter("property_1 =", value)
query = query.filter("property_2 =", value)
Here's a gotcha... be sure to have a space between "property_1" and "=", "property_1=" won't work (but it won't raise an error either).
Be aware that the Datastore has very limited support for querying in general, and you will certainly not have anywhere near the kind of power you are used to when composing queries in .Net with something like LINQ.
GAE is a good start if you want to learn Python, but it is a terrible platform for web development. You will find yourself stymied and frustrated by its inflexibility, the need to give up your normalized data model from Day 1, lack of referential integrity, and the awful performance compared to a real SQL database.
Oh, and the constant outages, the scheduled maintenance that borks the whole system for a week, the backup tool that takes 4 hours to run and then crashes trying to restore the backups... I have a long list :)
This is something to consider at the get go, you'd be surprised how quickly performance degrades (ie a hundred or more items, not thousands)
Django templates look a lot like HTML, but with special Django stuff in them. You can get the general idea from this page: http://docs.djangoproject.com/en/dev/ref/templates/builtins/
And yes, you write in JS pretty much the same stuff that you'd always write in JS.
m=db.define_table('message',Field('body'))
def index():
return dict(form=crud.create(m),rows=db(m).select())
It runs on GAE as it is (requires the scaffolding app).