更改日期格式4

问题描述:

我有日期格式在我text_field这样的 - > 2014年11月14日20:45:00更改日期格式4

我想在我的数据库中轨4.我如何保存进入它非常简单的方式在我的数据库列中键入“datetime”?

我试过下面的方式,但它似乎没有工作。

params[:task_assign][:task_assign_scheduled_on]=DateTime.civil(
params[:task_assign][:"task_assign_scheduled_on(1i)"].to_i, 
params[:task_assign][:"task_assign_scheduled_on(2i)"].to_i, 
params[:task_assign][:"task_assign_scheduled_on(3i)"].to_i, 
params[:task_assign][:"task_assign_scheduled_on(4i)"].to_i, 
params[:task_assign][:"task_assign_scheduled_on(5i)"].to_i) 
+0

你想使用什么格式?用言语来说,几个月或什么? – 2014-11-14 14:27:53

+0

@AhmedElassuty我想保存在我的数据库中的文本域值2014-11-14 20:45:00。 – samarth 2014-11-14 14:31:48

在posgres数据库实际上您的格式将被保存没有任何进一步的铸造,但你可以尝试,如果有助于

"2014-11-14 20:45:00".to_datetime 

--> Fri, 14 Nov 2014 20:45:00 +0000 

而且这还不是要使用的格式to_datetime那将保存到您的数据库,以便我告诉你没有任何问题,直接保存你的格式。

如果你试图让一个datetime列,形成数据库,将是这样的:

Fri, 14 Nov 2014 14:44:03 UTC +00:00 

我不知道这是否从一个数据库不同,其他或有东西拨错用ActiveRecord该手柄它会自动。

+0

我不想要那种类型的格式,但我在我的代码中知道我的错。谢谢btw :) – samarth 2014-11-14 14:48:10

ActiveRecord在持久化记录时自动转换有效的DateTime字符串。保存到数据库的格式取决于您使用的数据库和它的设置。通常,PG会将任何DateTime保存为UTC DateTime字符串。

如果要以特定格式保存日期时间,则需要更新数据库设置或将属性保存为字符串。

+0

我使用MySql。它也以同样的方式工作。现在问题解决了 – samarth 2014-11-14 14:55:38