我目前正在使用 Python 在 AppEngine 上构建一个网站,并且我必须在数据存储中存储一些信息。
我所有的信息都分为三个不同的类别,如下所示:
1°/- 文章(主页新闻条目)。2°/- 产品(产品页面描述条目)。3°/- 导航(包含所有标题菜单条目)。
现在,我像这样存储它们:
from google.appengine.ext import db
class article(db.Model):
title = db.StringProperty()
body = db.TextProperty()
author = db.StringProperty()
aside = db.StringProperty()
comment = db.StringProperty()
date = db.DateProperty(auto_now_add=True)
class navigation(db.Model):
title = db.StringProperty()
comment = db.StringProperty()
link = db.StringProperty()
class products(db.Model):
title = db.StringProperty()
body = db.TextProperty()
author = db.StringProperty()
aside = db.StringProperty()
comment = db.StringProperty()
date = db.DateProperty(auto_now_add=True)
我知道这没有优化,如您所见,我的产品类别与文章相同。我想我可以从第一篇文章中得到它,或者从第一篇文章中扩展它,但我不确定。
所以我的问题是:
我需要使用命名空间吗?(我想清楚地将文章与产品分开)。
这种数据存储的通常设计是什么?
我的文章正文属性永远不会超过 50 个单词,我该如何限制 stringProperty 范围?我是否必须在调用此属性期间进行设置,或者是否有任何选项可以设置 DB 类的默认方法?
提前非常感谢。