草庐IT

datetime_column

全部标签

ruby-on-rails - ruby rails : adding columns to existing database

我收到一个错误:SQLite3::SQLException:nosuchcolumn:ideas.list_id:SELECT"ideas".*FROM"ideas"WHERE"ideas"."list_id"=2但是我加了t.integer:list_id到我的数据库迁移文件:classCreateIdeas这给了我这个:classCreateIdeas然后我输入rakedb:migrate知道为什么我会收到一条错误消息说没有专栏吗?我对RoR还是陌生的。我必须以其他方式添加一列吗?谢谢 最佳答案 正如Speransky所建议的,

ruby-on-rails - rails 4 : Add Multiple Columns to Existing Table

我知道如何向现有表格中添加一列。现在我必须向现有表中添加许多列。是否有更短的方法:add_col1_col2_col3_col4_.._coln_to_tablescol1:integercol2:integeretc...我是否必须对我必须添加的所有额外列执行上述操作? 最佳答案 没有必要。你可以做假设TableName是用户railsgmigrationAddColumnsToUsercol1:integercol2:integer..etc. 关于ruby-on-rails-rai

ruby-on-rails - 从 Ruby 中的 DateTime 变量获取时间

我在ruby​​工作,我有一个包含数据库中今天日期时间的对象。我只想要时间截断数据。我怎样才能得到它? 最佳答案 尝试DateTime#strftime.DateTime.now.strftime("%H:%M")#=>"12:17" 关于ruby-on-rails-从Ruby中的DateTime变量获取时间,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/12562804/

ruby-on-rails - 脚手架 ActiveRecord : two columns of the same data type

另一个基本的Rails问题:我有一个数据库表,需要包含对特定数据类型的两个不同记录的引用。假设示例:我正在制作视频游戏数据库。我有一张“公司”表。我想为每个“视频游戏”条目指定一个开发者和一个发布者。我知道如果我想拥有一家公司,我可以这样做:script/generateVideogamecompany:references但我需要同时拥有这两家公司。我宁愿不使用连接表,因为给定的数据类型只能有两个,我需要它们是不同的。看起来答案应该很明显了,但是我在网上到处都找不到。 最佳答案 只是为了稍微整理一下,在您的迁移中,您现在还可以:c

ruby-on-rails - RoR,无法从 DateTime/TimeWithZone 迭代

我有一个简单的任务,我想获取一个开始日期和一个结束日期,然后循环计算天数/日期。这段代码正在我的db:seedrake任务中使用。目前,我的代码经历了以下尝试。(someModel.start_date.to_datetime..someModel.end_date.to_datetime).each{|x|putsx}......(someModel.start_date...someModel.end_date).each{|x|putsx}在每种情况下,我都会收到这样的错误。can'titeratefromActiveSupport::TimeWithZoneorcan'tite

ruby-on-rails - 如何在 Ruby 中更改 DateTime 的时区?

在保持时区不变的情况下读取、写入和序列化日期和时间变得很烦人。我正在使用Ruby(和Rails3.0)并试图改变DateTime的时区。(到UTC)但不是时间本身。我想要这个:t=DateTime.nowt.hour->4t.offset=0t.hour->4t.utc?->true我最接近的是这个,但它不直观。t=DateTime.nowt.hour->4t+=t.offsett=t.utct.hour->4t.utc?->true有没有更好的办法? 最佳答案 使用Rails3,您正在寻找DateTime.change()dt=D

ruby-on-rails - 如何从现有的 Time.zone for Rails 创建 Ruby DateTime?

我有用户在RubyonRails网站中输入日期。我将日期解析为DateTime对象,内容如下:date=DateTime.new(params[:year].to_i,params[:month].to_i,params[:day].to_i,params[:hour].to_i,params[:minute].to_i)或date=DateTime.parse(params[:date])两个DateTime都将不在我之前设置的用户时区中,例如:Time.zone="PacificTime(US&Canada)"如何将上述DateTime解析为正确的时区?我知道DateTime.ne

ruby - Ruby 中 DateTime 的毫秒分辨率

我有一个类似2012-01-01T01:02:03.456的字符串,我使用ActiveRecord将其存储在Postgres数据库TIMESTAMP中。不幸的是,Ruby似乎切断了毫秒数:ruby-1.9.3-rc1:078>'2012-12-31T01:01:01.232323+3'.to_datetime=>Mon,31Dec201201:01:01+0300Postgrs支持微秒分辨率。如何相应地保存我的时间戳?我至少需要毫秒分辨率。(PS是的,我可以破解postgres中的毫秒整数列;这违背了ActiveRecord的全部目的。)更新:非常有帮助的回复表明Ruby的DateTi

ruby - 如何从 DateTime 值中删除区域?

我有这个日期时间:=>Fri,03Feb201211:52:42-0500如何删除ruby​​中的区域(-0500)?我只想要这样的东西:=>Fri,03Feb201211:52:42 最佳答案 时间总有一个区(没有区就没有意义)。您可以使用DateTime#strftime在打印时选择忽略它:now=DateTime.nowputsnow#=>2012-02-03T10:01:24-07:00putsnow.strftime('%a,%d%b%Y%H:%M:%S')#=>Fri,03Feb201210:01:24参见Time#st

ruby-on-rails - Rails 迁移 : tried to change the type of column from string to integer

我使用railsgeneratemigrations命令在我的rails应用程序中创建了一个表。这是迁移文件:classCreateListings然后我想将纬度和经度存储为整数我试着跑:railsgeneratemigrationchangeColumnType该文件的内容是:classChangeColumnType我原以为列类型会发生变化,但是rake被中止并出现了以下错误消息。我想知道为什么这没有通过?我在我的应用程序中使用postgresql。rakedb:migrate==ChangeColumnType:migrating=========================