472得票12回答
最简单的复制activerecord记录的方法是什么?

我想复制一个ActiveRecord对象,在此过程中更改单个字段(除了id)。 实现这一点的最简单方法是什么?我知道我可以创建一个新记录,然后迭代每个字段逐个复制数据,但我想知道是否有更简单的方法。也许像这样: new_record = Record.copy(:id)

452得票29回答
Rails:如何在ActiveRecord中设置默认值?

如何在 ActiveRecord 中设置默认值? 我看到了一篇来自 Pratik 的帖子,其中描述了一段丑陋而复杂的代码:http://m.onkey.org/2007/7/24/how-to-set-default-values-in-your-modelclass Item < A...

438得票6回答
如何在Rails中编写迁移以重命名ActiveRecord模型及其表?

我很不善于命名,意识到我的Rails应用程序中有更好的模型名称。有没有办法使用迁移来重命名模型及其对应的表格?原始答案:Original Answer

438得票5回答
Rails 4:可用数据类型列表

我在哪里可以找到适用于Ruby on Rails 4的数据类型列表? text (文本) string (字符串) integer (整数) float (浮点数) date(日期) 我不停地学习新的数据类型,因此我很想有一个可以轻松参考的列表。

434得票6回答
如何获取 Ruby 类的名称?

我怎样从一个 ActiveRecord 对象中获取类名? 我有:result = User.find(1) 我尝试了:result.class # => User(id: integer, name: string ...) result.to_s # => #<User:...

423得票4回答
Rails的update_attributes方法不保存数据?

是否有一种替代update_attributes的方法,不保存记录? 所以我可以做类似于:@car = Car.new(:make => 'GMC') #other processing @car.update_attributes(:model => 'Sierra', :yea...

393得票5回答
Rails中使用NOT NIL的where条件

如果使用 Rails 3 的风格,我该如何编写与以下代码相反的功能:Foo.includes(:bar).where(:bars=>{:id=>nil}) 我想找到id不为nil的地方。 我尝试过:Foo.includes(:bar).where(:bars=>{:id=&g...

377得票5回答
如何删除ActiveRecord对象?

如何删除ActiveRecord对象? 我查阅了Active Record查询指南,但没有找到关于删除的内容。 通过 id 进行删除, 像这样删除当前对象:user.remove, 能否基于 where 子句进行删除?

371得票8回答
Rails :include和:joins的区别

这更像是一个“为什么事情会这样工作”的问题,而不是“我不知道如何做到这一点”的问题... 因此,在获取已知将要使用的关联记录时,所传授的方法是使用:include,因为您会得到连接并避免了大量的额外查询:Post.all(:include => :comments) 但是当你查看日志...

369得票8回答
在Rails 4中添加一个参考列迁移

一个用户有很多上传。我想在uploads表中添加一列引用user的内容。迁移应该是什么样子的? 这是我拥有的东西。我不确定是否应该使用(1):user_id, :int还是(2):user, :references。我甚至不确定(2)是否可行。只是尝试按照“rails”的方式完成这个功能。c...