2017-01-13 117 views
0

我想帕拉姆「starts_at」值賦給變量@schedule_item,使用下面的代碼:軌分配變量值PARAM

@schedule_item = ScheduleItem.new 
    @schedule_item.schedule = @schedule 

    if params[:starts_at].present? 
     @schedule_item.starts_at = params[:starts_at] 
    end 

然而,當我把一個binding.pry後如果聲明,我看@ schedule_item.starts_at仍然是零。我也知道'params [:starts_at]'returns =>「01/17/2017 12:00 AM」。有什麼想法嗎?

+0

它在你的允許params爲白名單之前,您可能要驗證它是有道理的範圍? –

+0

yep:params.require(:schedule_item).permit(:schedule_id,:starts_at,:ends_at,:page_id) – jj1111

+0

在binding.pry中,我甚至嘗試[at] schedule_item.starts_at = 1返回1,但是當我嘗試[at] schedule_item.inspect我得到:「#」 – jj1111

回答

0

如果您需要將請求參數中的值存儲在數據庫的時間戳列中,那麼您可能首先需要將其解析爲時間值。

foo = Time.parse("1989-02-14") 

這應該給你一個時間值 - 但你保存它