拍卖在特定时间开始

时间:2013-09-23 23:00:30

标签: ruby-on-rails ruby

我正在制作一分钱拍卖网站,我希望拍卖会在模型中安排时开始,最好的方法是什么?     我应该尝试延迟工作还是有更好的方法?

1 个答案:

答案 0 :(得分:0)

根据你的说法,我认为你根本不需要背景工作。

请记住,您需要在控制器和视图中工作。仅仅隐藏视图中的出价按钮是不够的,还需要阻止控制器上的出价。

在控制器中,只需执行以下操作:

def create
  if Time.zone.now > @auction.start_datetime && Time.zone.now < @auction.end_datetime
    @bid = Bid.new(params[:bid])
    respond_to do |format|
      if @bid.save
        format.html { redirect_to @bid, notice: 'Bid was successfully created.' }
      else
        format.html { render action: "new" }
      end
    end
  end
end

一旦控制器在@ auction.end_datetime之后被击中,在模型中设置“关闭”属性,以确保服务器中的时钟更改不会重新打开已经结束的拍卖,这可能也是一种好习惯。< / p>