草庐IT

具有依赖子查询的 MySQL 查询花费的时间太长

全部标签

ruby-on-rails - 使用具有嵌套关联的多态路径

我有一个看起来像这样的多态关联:classLinetrueendclassEducation:itemendclassWork:itemend我想要一种从父项创建新行的简单方法。因此,我可能正在编辑Work对象的View,并希望有一个创建新Line对象的链接。通常,我会这样做:助手会为此制定路线。但是,这需要我检查Line在Controller中属于哪个父级,从而违背了多态性的目的(如果是这样的话,我本可以使用两个引用)。所以,我的问题是,如何让路径像普通路径助手一样以多态方式工作? 最佳答案 一种可能的方法是使用这样的路由:map

sql - rails union hack,如何将两个不同的查询放在一起

我有一个查询,它在同一个表中搜索两个单独的字段...寻找最有可能是特定城市但也可能是国家的位置...即需要两个字段。表格看起来像:CountryCityGermanyAachenUSAAmarilloUSAAustin结果:KeywordSideinfoAachenGermanyUSACountryAustinUSAGermanyCountry基本上我想知道是否有更简洁的方法来执行此操作,因为我必须使用两个单独的查询,然后将它们加在一起,对它们进行排序等(效果很好):defself.ajax(search)countries=Location.find(:all,:select=>'c

ruby - 具有持久变量的 Sinatra

我的sinatra应用程序必须解析一个~60MB的XML文件。这个文件几乎从不改变:在每晚的cron作业中,它被另一个覆盖。是否有技巧或方法可以将已解析的文件作为变量保存在内存中,以便我可以在传入请求时从中读取,而不必为每个传入请求一遍又一遍地解析它?一些伪代码来说明我的问题。get'/projects/:id'return@nokigiri_object.search("//projects/project[@id=#{params[:id]}]/name/text()")endpost'/projects/update'ifparams[:token]=="s3cr3t"@noko

ruby-on-rails - 具有存储库模式的 Ruby on Rails?

在使用ASP.NetMVC之后,我想到了Rails。我之前使用过Rails,但有点生疏。ASP.NetMVC教程建议使用存储库模式隐藏数据层实现。这允许更容易的单元测试依赖注入(inject),以及Controller与模型实现的良好解耦。我记得Rails的Controller直接使用ActiveRecord对象,单元测试使用可以轻松设置和拆除的测试数据库。这解决了换出单元测试的需要,但在Controller中暴露这么多ActiveRecord代码似乎仍然不是一个好主意。所以我的问题是,最新的最佳实践是什么?真实的(不是模拟的)数据库是否仍然用于单元测试?Rails开发人员是直接调用A

ruby - Rails 获取没有日期的当前时间

我知道有很多关于Rails的日期和时间的问题,但我似乎无法解决我遇到的问题。我可能只是对此很愚蠢..无论如何,我的问题是我想获取当前时间没有附加的日期。例如,当我使用以下内容时,我得到:Time.now=>2012-06-2909:23:04-0400或Time.current=>Fri,29Jun201209:23:23EDT-04:00我想在没有日期的情况下获取当前时间。即只是09:23:04-0400或09:23:23EDT-04:00如果有问题已经解决了这个问题,我将不胜感激。谢谢! 最佳答案 使用strftime以您想要的

sql - 将每个 SQL 查询记录到 Rails 中的数据库

我想将某些SQL查询rails执行(即CREATE、UPDATE和DELETE)保存到日志文件中因此我需要拦截所有查询,然后可能使用一些正则表达式过滤它们并根据需要记录它们。我应该把这样的东西放在Rails代码的什么地方? 最佳答案 这里是c0r0ner链接的简化版本,以更好地展示它:connection=ActiveRecord::Base.connectionclasse;end#executeoriginalstatementoriginal_exec(sql,*name)endend

ruby-on-rails - 在 Rails 中使用日期时间

如何在有/没有时区?如何提取day、month和year值?如何通过自定义模式提取日/月/年(是否可能)? 最佳答案 字符串格式的时间:post.created_at.strftime("FORMATSTRINGHERE")#Withouttheinfluenceoftime-zone:ItakeitthatyouwantUTCpost.created_at.utc.strftime("FORMATSTRINGHERE")strftime文档的链接:http://ruby-doc.org/core/classes/Time.html

ruby-on-rails - Ruby:如何在 YAML 中定义日期时间字段?

我正在为Rails应用创建测试数据。如何在YAML中定义日期时间字段的值? 最佳答案 当rails生成fixture文件时,它在yaml文件中使用以下格式one:something_at:2010-02-1111:02:57something_on:2010-02-11 关于ruby-on-rails-Ruby:如何在YAML中定义日期时间字段?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/que

ruby-on-rails - 查询多条记录时如何避免ActiveRecord::RecordNotFound异常

我有这个代码:Article.find([1,2,3])但数据库中只有记录1和2。我得到这个异常(exception):"ActiveRecord::RecordNotFound(Couldn'tfindallOfferswithIDs(1,2,3)(found2results,butwaslookingfor3))"有没有办法只获取现有记录而不获取异常? 最佳答案 Article.find_all_by_id([1,2,3])是要走的路! 关于ruby-on-rails-查询多条记录时

Ruby gem mysql2 安装错误

我在Windows7中安装了Ruby版本ruby​​1.9.2p0(2010-08-18)[i386-mingw32]。和gem版本1.3.7当我尝试安装mysqlgem时,它显示Failedtobuildgemnativeextension错误,这是为什么?我的mysql版本是5.1.36(WampServer)E:\RubyApps\test_app2>geminstallmysql2Buildingnativeextensions.Thiscouldtakeawhile...ERROR:Errorinstallingmysql2:ERROR:Failedtobuildgemnat