예제 #1
0
파일: main.py 프로젝트: sivy/gae-learning
    def get(self, guestbook_name='stremor'):

        # SELECT * FROM is a given when used in Model context
        greetings = Greeting.gql("WHERE ANCESTOR IS :1 "
                                "ORDER BY date DESC LIMIT 10",
                                guestbook_key(guestbook_name))

        user = users.get_current_user()
        user_nick = ''
        if user:
            url = users.create_logout_url(self.request.uri)
            url_linktext = 'Logout'
            user_nick = user.nickname()
        else:
            url = users.create_login_url(self.request.uri)
            url_linktext = 'Login'

        template_values = {
            'guestbook_name': guestbook_name,
            'greetings': greetings,
            'user_nick': user_nick,
            'url_linktext': url_linktext,
            'url': url
        }

        template = jinja_environment.get_template('index.html')

        self.response.headers['Content-Type'] = 'text/html'
        self.response.out.write(template.render(template_values))
예제 #2
0
    def test_post_greeting(self):
        response = self.testapp.post('/sign', {'guestbook_name': 'test', 'content': 'hi'})
        eq_(response.status, '302 Moved Temporarily')

        greetings = Greeting.gql("WHERE ANCESTOR IS :1 "
                                 "ORDER BY date DESC LIMIT 10",
                                  guestbook_key('test'))

        ok_(greetings.count() == 1, 'There should be 1 Greeting object')
예제 #3
0
    def test_loggedin_post_greeting(self):
        os.environ['USER_EMAIL'] = '*****@*****.**'
        os.environ['USER_ID'] = '123'
        os.environ['AUTH_DOMAIN'] = 'testbed'

        self.testapp.post('/sign', {'guestbook_name': 'test', 'content': 'hi'})

        greetings = Greeting.gql("WHERE ANCESTOR IS :1 "
                                 "ORDER BY date DESC LIMIT 10",
                                  guestbook_key('test'))
        greeting = greetings.fetch(1)[0]  # latest

        eq_(greeting.content, 'hi',
            'greeting content should be \'hi\'')
        eq_(greeting.author, '*****@*****.**',
            'author content should be \'[email protected]\'')
예제 #4
0
파일: main.py 프로젝트: sivy/gae-learning
    def get(self):
        guestbook = self.request.get('guestbook')
        greetings = Greeting.gql("WHERE ANCESTOR IS :1 "
                                "ORDER BY date DESC LIMIT 10",
                                guestbook_key(guestbook))

        # this ought to be a lot smarter
        d = []
        for greeting in greetings.fetch(10):
            d.append({
                'content': greeting.content,
                'author': greeting.author,
                'datetime': datetime.strftime(greeting.date, DATE_FMT)
                })

        self.response.headers['Content-Type'] = 'application/json'
        self.response.out.write(json.dumps(d))