草庐IT

db_last_insert_id

全部标签

ruby-on-rails - 在 Devise 中,last_sign_in_at 的用途是什么?

Devise中的标准用户列是last_sign_in_at,当current_sign_in_at更新时,它保存current_sign_in_at的先前值。last_sign_in_at是否对Devise的核心功能或模块功能有任何实用性,还是只是为了方便起见? 最佳答案 last_sign_in_at是用户在当前session之前登录的日期和时间,即current_sign_in_at。如果他们还没有登录或者这是他们的第一次session,它将是nil。更好的名称可能是previous_sign_in_at,因为这不是他们上次(当

ruby-on-rails - 从集合中获取所有 id

我的收藏品是这样的:hotels=Hotel.where('selection=?',1).limit(4)如何在不循环的情况下获取该项目的所有ID?我可以使用类似的东西吗:hotels.ids?谢谢 最佳答案 试试hotels.map(&:id)或hotels.map{|h|怎么样?h.id}?它们对Ruby来说意义相同,第一个通常对习惯了ruby​​的人来说更好,而第二个对初学者来说更容易理解。 关于ruby-on-rails-从集合中获取所有id,我们在StackOverflow上

ruby - pg_dump : [archiver (db)] query failed: ERROR: permission denied for relation abouts

我正在尝试转储我的pgdb但遇到这些错误请建议pg_dump:[archiver(db)]queryfailed:ERROR:permissiondeniedforrelationaboutspg_dump:[archiver(db)]querywas:LOCKTABLEpublic.aboutsINACCESSSHAREMODE 最佳答案 您正在执行pg_dump的用户没有公共(public)模式的权限。如果允许则添加权限:GRANTUSAGEONSCHEMApublicTO;GRANTSELECTONALLTABLESINSCH

ruby - 使用 ruby​​ pg gem 准备好的 INSERT 语句示例

谷歌搜索了大约半天,我找不到任何使用pggem(postgresqlruby​​gem)准备好的INSERT语句的示例。我试过了(在查看了gem文档之后):deftest2conn=PG.connect(dbname:'db1')conn.prepare("statement1",'INSERTINTOtable1(id,name,profile)VALUES(?,?,?)')end但是我得到以下错误:pgtest.rb:19:in`prepare':ERROR:syntaxerroratornear","(PG::Error)LINE1:INSERTINTOtable1(id,nam

ruby-on-rails - ruby on rails rake db :migrate error

我开始使用本指南学习ruby​​onrails:getting_started,我创建了我的项目和数据库,但是当我运行rakedb:migrate时,我得到了这个错误:@mona-Extensa-5230:~/rubyDev/Sites/blog#rakedb:migrate(in/home/mona/rubyDev/Sites/blog)==CreatePosts:migrating====================================================--create_table(:posts)rakeaborted!Anerrorhasoccurr

ruby-on-rails - 如何使用不唯一的 "association_type"和 "association_id"在 Rails 中索引多态表

我有一个名为“投票”的多态表,其中包含来自答案和问题的投票。投票user_idvoteable_idvoteable_typevalue12Answer122Answer1在这种情况下,id=2的答案有两票赞成。问题是:如何索引这个表?第一种方法:add_index:votes,[:voteable_id,:voteable_type]这是行不通的,因为重复的键值会违反唯一约束第二种方法:add_index:votes,:voteable_id,add_index:votes,:voteable_type我猜这个不会有太多性能,因为同时对id和type进行复合查询。第三种方法:add_

ruby-on-rails - 具有友好 ID 的 ActiveAdmin

我在带有slug的Rails4应用程序中使用friendly_id。现在我正在使用active_admingem.问题:当我单击来自事件管理员的Group资源的显示链接时,它抛出以下异常:ActiveRecord::RecordNotFoundat/admin/groups/username20-s-group-1我想,我需要重写一些active_admin默认函数吗? 最佳答案 有些情况下,当应用程序退出一些资源时,为了保持它的DRY有一个很好的解决方案,需要为整个应用程序编写几行代码-只需覆盖activeadmin的资源Cont

ruby - 为什么 `Enumerable` 有 `first` 而不是 `last` ?

Enumerable有first:(3..5).to_enum.first#=>3但它没有last:(3..5).to_enum.last#=>NoMethodError:undefinedmethod`last'for#这是为什么? 最佳答案 是因为不是所有的可枚举对象都有最后一个元素。最简单的例子是:[1,2,3].cycle#(anexampleofwhatcycledoes)[1,2,3].cycle.first(9)#=>[1,2,3,1,2,3,1,2,3]即使枚举器元素是有限的,也没有简单的方法来获取最后一个元素,除非

ruby - 在 ruby​​/ActiveRecord 中生成类似 Instagram 或 Youtube 的不可猜测的字符串 ID

在创建给定ActiveRecord模型对象的实例后,我需要生成一个简短的(6-8个字符)唯一字符串用作URL中的标识符,采用Instagram照片URL的样式(如http://instagram.com/p/P541i4ErdL/,它我只是争先恐后地成为404)或Youtube的视频网址(如http://www.youtube.com/watch?v=oHg5SJYRHA0)。执行此操作的最佳方法是什么?最简单的是createarandomstring重复直到它是唯一的?有没有一种方法可以对整数ID进行散列/洗牌,使用户无法通过更改一个字符来破解URL(就像我对上面的404'sInst

ruby-on-rails - 如何验证关联的模型 ID?

我有一个学生和一个类(class)模型。学生属于类(class),类(class)有很多学生。classStudenttruevalidates_associated:courseendclassCoursetruevalidates:courseCode,:courseYr,:uniqueness=>{:message=>"Cannotrepeatthecode"}has_many:studentsend在用于创建学生记录的表单中,我让用户输入类(class)ID。但我不知道如何验证用户输入的course_id。学生模型验证不会产生错误,即使我键入不存在的类(class)ID。如何让