0

问候我正在破解 Django 并尝试测试以下内容:

woot.com一样,我想出售“每天一件商品”,因此当天只有一件商品可用(假设默认 www.mysite.com 将被重定向到该商品),

假设我调用这些项目的网址是这样的:www.mysite.com/item/<number>

我的项目模型:

class Item(models.Model):
        item_name = models.CharField(max_length=30)
        price = models.FloatField()
        content = models.TextField() #keeps all the html content
        start_time = models.DateTimeField()
        end_time = models.DateTimeField()

我对渲染的看法:

def results(request, item_id):
    item = get_object_or_404(Item, pk=item_id)
 now = datetime.now()

    if item.start_time > now:
     #render and return some "not started yet" error templete
 elif item.end_time < now:
     #render and return some "item selling ended" error templete
 else:
     # render the real templete for selling this item

实现这一目标的有效和聪明的模型和模板是什么?

4

2 回答 2

1

看来您已经了解了基础知识,所以我假设您正在寻求完善的建议……这方面的一些想法:

  1. 我想我会有一个像这样的单独 URL /items/today/,或者可能只是/today/.

  2. datime.datetime.now()将只想使用. 整个事情是一个对象,其中包含指定为微秒精度的当前时间。

  3. 如何为所有三种情况使用单个基本模板并从它继承来更改包含购买时单击的按钮、价格等的块,或者说明该项目尚未出售/不再出售的说明。然后人们仍然可以在说“看看我昨天买了什么,你必须通过电子邮件访问那个网站”之类的话时使用带编号的 URL。;-)

于 2010-01-24T18:14:37.143 回答
1

我的网站上有一张当日照片。我有一个代表今天照片的模型,一个 cron 作业在午夜运行一个自定义管理命令,用序列中的下一张照片(也是一个模型)更新它。所以我所要做的就是从数据库中检索当前照片。

于 2010-01-24T18:36:06.753 回答