如何在谷歌应用程序引擎中的留言板中的每个帖子下添加日期和时间 [英] How to add date and time under each post in guestbook in google app engine

查看:127
本文介绍了如何在谷歌应用程序引擎中的留言板中的每个帖子下添加日期和时间的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

这里是代码:

  import cgi 
import datetime
import wsgiref.handlers

from google.appengine.ext从google.appengine.api导入db
从google.appengine.ext导入用户
导入webapp

类问候语(db .Model):
author = db.UserProperty()
content = db.StringProperty(multiline = True)
date = db.DateTimeProperty(auto_now_add = True)


class MainPage(webapp.RequestHandler):
def get(self):
self.response.out.write('< html>< body>')

greetings = db.GqlQuery(SELECT * FROM Greeting ORDER BY date DESC LIMIT 10)
在问候语中的问候:

如果greeting.author:
self .response.out.write('< b>%s< / b>写道:'%greeting.author.nickname())

else:
self.response.out。写('匿名人写道:')
self.response.ou t.write('< blockquote>%s< / blockquote>%
cgi.escape(greeting.content))



#写入提交表单和页面的页脚
self.response.out.write(
< form action =/ signmethod =post>
< div>< textarea name =contentrows =3cols =60>< / textarea>< / div>
< div>< input type =submitvalue =Sign Guestbook>< / div>
< / form>
< / body>
< / html>)

类留言簿(webapp.RequestHandler):
def post(self):
greeting = Greeting()

if users.get_current_user():
greeting.author = users.get_current_user()

greeting.content = self.request.get('content')
greeting.put()
self.redirect('/')


application = webapp.WSGIApplication([
('/',MainPage),
('/ sign',Guestbook)
],debug = True)


def main():
wsgiref.handlers.CGIHandler() .run(应用程序)


如果__name__ =='__main__':
main()


解决方案

使用 strftime()方法在日期时间实例 greeting.date 上加入类似这样的内容:

 用于问候问候:
self.response.out.write(gree ting.date.strftime('< b>发布:%y-%m-%d%H:%M:%S< / b>< br>'))



如果您有缩进问题,请复制并粘贴此代码:

 导入cgi 
导入日期时间
导入wsgiref.handlers
$ b从google.appengine.ext导入db
from google.appengine.api导入用户
来自google.appengine.ext导入webapp

类问候语(db.Model):
author = db.UserProperty()
content = db.StringProperty( multiline = True)
date = db.DateTimeProperty(auto_now_add = True)

$ b $ class MainPage(webapp.RequestHandler):
def get(self):
self.response.out.write('< html>< body>')
greetings = db.GqlQuery(SELECT * FROM Greeting ORDER BY date DESC LIMIT 10)
for greeting在问候语中:
self.response.out.write(greeting.date.strftime('< b>发布:%Y-%m-%d%H:%M:%S< / b>< ))
if greeting.author:
self.response.out.write('< b>%s< / b>写道:'%greeting.author.nickname())
else:
self.response.out.write('anonymous person wrote:')
self.response.out.write( '< blockquote>%s< / blockquote>'%
cgi.escape(greeting.content))
#写入页面的提交表单和页脚
self.response.out .write(
< form action =/ signmethod =post>
< div>< textarea name =contentrows =3cols = 60元>< / textarea>< / div>
< div>< input type =submitvalue =Sign Guestbook>< / div>
< / (&);
< / body>
< / html>)

class Guestbook(webapp.RequestHandler):
def post(self):
greeting = Greeting()
如果users.get_current_user():
greeting.author = users.get_current_user()
greeting.content = self.request.get('content')
greeting.put()
self.redirect('/')


application = webapp.WSGIApplication([
('/',MainPage),
('/ sign',Guestbook)
],debug = True)

$ b def main() :
wsgiref.handlers.CGIHandler()。run(应用程序)

$ b $如果__name__ =='__main__':
main()


here is the code:

import cgi
import datetime
import wsgiref.handlers

from google.appengine.ext import db
from google.appengine.api import users
from google.appengine.ext import webapp

class Greeting(db.Model):
  author = db.UserProperty()
  content = db.StringProperty(multiline=True)
  date = db.DateTimeProperty(auto_now_add=True)


class MainPage(webapp.RequestHandler):
    def get(self):
        self.response.out.write('<html><body>')

        greetings = db.GqlQuery("SELECT * FROM Greeting ORDER BY date DESC LIMIT 10")
        for greeting in greetings:

            if greeting.author:
                self.response.out.write('<b>%s</b> wrote:' % greeting.author.nickname())

            else:
                self.response.out.write('An anonymous person wrote:')
            self.response.out.write('<blockquote>%s</blockquote>' %
                                    cgi.escape(greeting.content))



        # Write the submission form and the footer of the page
        self.response.out.write("""
              <form action="/sign" method="post">
                <div><textarea name="content" rows="3" cols="60"></textarea></div>
                <div><input type="submit" value="Sign Guestbook"></div>
              </form>
            </body>
          </html>""")

class Guestbook(webapp.RequestHandler):
  def post(self):
    greeting = Greeting()

    if users.get_current_user():
      greeting.author = users.get_current_user()

    greeting.content = self.request.get('content')
    greeting.put()
    self.redirect('/')


application = webapp.WSGIApplication([
  ('/', MainPage),
  ('/sign', Guestbook)
], debug=True)


def main():
  wsgiref.handlers.CGIHandler().run(application)


if __name__ == '__main__':
  main()

解决方案

Use the strftime() method on the datetime instance greeting.date with something like this:

for greeting in greetings:
 self.response.out.write(greeting.date.strftime('<b>posted:%Y-%m-%d %H:%M:%S</b><br>'))

If you are having problem of indentation, copy and paste this code:

import cgi
import datetime
import wsgiref.handlers

from google.appengine.ext import db
from google.appengine.api import users
from google.appengine.ext import webapp

class Greeting(db.Model):
  author = db.UserProperty()
  content = db.StringProperty(multiline=True)
  date = db.DateTimeProperty(auto_now_add=True)


class MainPage(webapp.RequestHandler):
    def get(self):
        self.response.out.write('<html><body>')
        greetings = db.GqlQuery("SELECT * FROM Greeting ORDER BY date DESC LIMIT 10")
        for greeting in greetings:
            self.response.out.write(greeting.date.strftime('<b>posted: %Y-%m-%d %H:%M:%S</b><br>'))         
            if greeting.author:
                self.response.out.write('<b>%s</b> wrote:' % greeting.author.nickname())
            else:
                self.response.out.write('An anonymous person wrote:')
            self.response.out.write('<blockquote>%s</blockquote>' %
                                    cgi.escape(greeting.content))
        # Write the submission form and the footer of the page
        self.response.out.write("""
              <form action="/sign" method="post">
                <div><textarea name="content" rows="3" cols="60"></textarea></div>
                <div><input type="submit" value="Sign Guestbook"></div>
              </form>
            </body>
          </html>""")

class Guestbook(webapp.RequestHandler):
  def post(self):
    greeting = Greeting()
    if users.get_current_user():
      greeting.author = users.get_current_user()
    greeting.content = self.request.get('content')
    greeting.put()
    self.redirect('/')


application = webapp.WSGIApplication([
  ('/', MainPage),
  ('/sign', Guestbook)
], debug=True)


def main():
  wsgiref.handlers.CGIHandler().run(application)


if __name__ == '__main__':
  main()

这篇关于如何在谷歌应用程序引擎中的留言板中的每个帖子下添加日期和时间的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆