在gae后台判断数据是否存在 实体的ID DateTime时区的问题
来源:互联网 发布:南通家纺城网络批发 编辑:程序博客网 时间:2024/05/20 22:39
今天在自己的网站上添加了个评论的功能,因为要手记发表评论者的email跟名字,就涉及到了数据判断的问题,如果email已经在数据库里就不保存,否则就保存,
client=Client()
client.name=self.request.get('name')
client.email=self.request.get('email')
email=client.email
client.date =self.request.get('date')
query = db.GqlQuery("SELECT * FROM Client") 将所有客户数据取出
s=[]
for i in query:
s.append(i.email)
if email in s: 这里就是判断
pass
else:
client.put()
而不能直接这样判断:
query = db.GqlQuery("SELECT * FROM Client")
for i in query:
if email==i.email: 这里明显是错误的,因为他在循环的时候是验证每一次的i.email的,所以就不准确
pass
else:
client.put()
还有个问题就是在后台判断实体的ID:
def get(self,id):
infoId = int(id)
info = Info.get_by_id(infoId)
if info.category.key().id()==3001 or info.category.key().id()==2:
value=1
else:
value=0
这里的判断:info.category.key().id()==3001,而不是像django里的info.category.key.id==3001!
最后我还有个错误,因为总是命名不规范,我先把程序上传到gae,后来就把不规范的class名字改了,结果就全错了,所以注意::
如果在本地跑没事,但是上传到gae的程序的类model
gae的db.DateTimeProperty()默认的是日期时间值作为 UTC 时区存储
所以就要改!
先写一个类:
class JuxinUtils(object):
def cntime(self):
return datetime.datetime.utcnow() + datetime.timedelta(hours=+8)
然后在保存日期的时候这样保存
juxinUtils = JuxinUtils()
ms.date = juxinUtils.cntime()
ms.put()
就是在UTC时区加八个小时就是北京时间!
- 在gae后台判断数据是否存在 实体的ID DateTime时区的问题
- jquery判断ID是否存在的方法
- GAE中new Date()时区的问题
- GAE存储的数据的数据管理后台
- Java判断id,用户,是否存在问题
- Jquery判断$("#id")获取的对象是否存在的方法
- Jquery判断$("#id")获取的对象是否存在的方法
- Jquery判断$("#id")获取的对象是否存在的方法
- Jquery下判断Id是否存在的代码
- Jquery如何判断 $("#id")获取的对象是否存在
- Jquery下判断Id是否存在的代码
- javascript 判断某元素的id是否存在
- Jquery下判断Id是否存在的代码
- Jquery下判断Id是否存在的代码
- Jquery下判断Id是否存在的代码
- excel中判断一个表中的某一列的数据在另一列中是否存在
- Jquery判断Id是否存在
- Jquery 判断id是否存在
- Hadoop节点热拔插
- Android开发入门——helloWorld
- Linux 内核的排队自旋锁(FIFO Ticket Spinlock)
- AJAX 基础
- 给virtualbox中的linux系统共享windows目录
- 在gae后台判断数据是否存在 实体的ID DateTime时区的问题
- openssl 在arm下的 交叉编译
- SWT程序中嵌入第三方程序的窗口
- 篡改主页的一种解决方法
- http://www.ibm.com/developerworks/cn/linux/
- Linux驱动学习方法和关键技术
- 看三国感悟
- 成长
- 运用SQL SERVER 2005 CLR解决XML Showplan实例教程