Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/59.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 如何在Rails应用程序中存储年份_Ruby On Rails_Database Design_Datetime - Fatal编程技术网

Ruby on rails 如何在Rails应用程序中存储年份

Ruby on rails 如何在Rails应用程序中存储年份,ruby-on-rails,database-design,datetime,Ruby On Rails,Database Design,Datetime,我只想在我的一个模型中存储年份。目前,我只有一个名为year of type date的数据库字段,但它似乎需要一个完整的日期(yyyy-mm-dd),而不仅仅是一年 储存这个最好的方法是什么?在一个日期字段中,但使用某种方式只是让它存储日期位(在这种情况下,如何存储?),或者在一个int字段中,或者字符串字段中,或者什么?在某些方面,使用int字段感觉是错误的,但它可能是最简单的。这取决于可能的日期范围。如果您的日期从BC到遥远的未来(负到超过4位),则最容易存储整数(仅出于排序原因)。如果要

我只想在我的一个模型中存储年份。目前,我只有一个名为year of type date的数据库字段,但它似乎需要一个完整的日期(yyyy-mm-dd),而不仅仅是一年


储存这个最好的方法是什么?在一个日期字段中,但使用某种方式只是让它存储日期位(在这种情况下,如何存储?),或者在一个int字段中,或者字符串字段中,或者什么?在某些方面,使用int字段感觉是错误的,但它可能是最简单的。

这取决于可能的日期范围。如果您的日期从BC到遥远的未来(负到超过4位),则最容易存储整数(仅出于排序原因)。如果要进行计算或比较日期,这也是正确的

否则我可能会带着绳子走


使用日期字段使用一月一日,并在显示时提取年份部分。

基于可维护性,我建议不要在日期字段中使用任意选择的日期。你会知道你武断地选择了这个,但你的应用程序的后续维护者会这样做吗

我会选择int,因为这样你就不会存储任何东西,除了你想存储的东西之外,也不会有太多关于它的含义的混淆