Tag: ruby on rails 3.2

需要将Postgres(== String)中的布尔值转换为Ruby布尔值

我正在使用Postgres和Rails。 有一个带有subselect的查询返回一个布尔值,但Postgres总是返回一个像’t’或’f’的字符串。 但是在生成的JSON中我需要一个真正的布尔值。 这是我的查询: SELECT *, EXISTS ( SELECT TRUE FROM measurement JOIN experiment ON measurement.experiment_id = experiment.id JOIN location ON experiment.location_id = location.id WHERE location.map_id = map.id LIMIT 1 ) AS measurements_exist FROM “map” 无论我是使用THEN true还是THEN 1或THEN ‘true’都没关系,我总会得到一个字符串。 所以我的JSON响应总是这样: [ {“id”:8, …, “measurements_exist”:”f”}, {“id”:9, …, “measurements_exist”:”t”} ] 但它应该(!)看起来像那样: [ {“id”:8, …, “measurements_exist”:false}, {“id”:9, …, […]

如何安装json gem – 无法构建gem原生扩展

我正在尝试将rails应用程序部署到我的ubuntu linux服务器上。 我正在使用capistrano和bundler,当它安装gem时,它失败并出现此错误: Installing json (1.7.7) with native extensions Gem::Installer::ExtensionBuildError: ERROR: Failed to build gem native extension. /opt/ruby-enterprise-1.8.7-2012.02/bin/ruby extconf.rb creating Makefile make /usr/bin/gcc -I. -I/opt/local/include -I/opt/ruby-enterprise-1.8.7- 2012.02/lib/ruby/1.8/i686-linux -I/opt/ruby-enterprise-1.8.7-2012.02/lib/ruby/1.8/i686-linux -I. -D_FILE_OFFSET_BITS=64 -fPIC -g -O3 -Wall -c parser.c In file included from /usr/include/i386-linux-gnu/bits/posix1_lim.h:157:0, from /usr/include/limits.h:145, from /usr/lib/gcc/i686-linux-gnu/4.6/include-fixed/limits.h:169, from /usr/lib/gcc/i686-linux-gnu/4.6/include-fixed/syslimits.h:7, from /usr/lib/gcc/i686-linux-gnu/4.6/include-fixed/limits.h:34, from /opt/ruby-enterprise-1.8.7-2012.02/lib/ruby/1.8/i686-linux/ruby.h:95, from ../fbuffer/fbuffer.h:6, from parser.rl:1: […]

为什么Rails 4.0 RC1中没有资产/图像目录

我刚刚发现当我生成Rails 4应用程序(目前是Rails 4 rc1)时,没有默认的目录assets/images 。 而在Rails 3.1 / 3.2中则生成了它。 请告诉我为什么会这样? 我的意思是我可以在一秒钟内创建一个目录,但这不是重点。 如果我没有在任何公告中得到这个原因,我很抱歉,否则对我来说没有意义。 谢谢

由于url编码,URL重写失败

我最近在我的API项目上实现了版本控制。 现在我的api的URL必须以序列/v1/为前缀(正如我目前在v1上) 我不想打破旧的调用,所以为了确保透明的兼容性,我想重写旧的URL。 应将/events/9999/attendees等url重定向到/v1/events/9999/attendees 我使用以下代码将我的rails routes配置文件routes.rb设置为: match “*path”, :to => redirect(“/#{API_CONFIG[‘current_version’]}/%{path}”), :constraints => lambda { |request| true } 我现在面临的问题是,最终重写的路线似乎是url编码的……(或其他东西) 实际上,那 就是看似被破坏 的 %{path} 。 然后 : /events/9999/attendees被重定向到/v1/events%2F9999%2Fattendees 我究竟做错了什么 ? 非常感谢

狂欢 – 在同一页面上将多个变体添加到购物车

我正在将Spree用于ecommerece网站,每种产品都将以大量颜色出售,大多数客户都希望购买相同产品的不同颜色(例如变体)。 我希望允许客户在同一页面上添加同一产品的多个变体,我目前有一个带有单选按钮的变体列表,可以选择购买变体和数量。 相反,我只想要一些默认为零的数量框,以便客户可以简单地将他们想要的数字添加到每个变体中,然后单击添加到购物车。 看完订单控制器后,我想出了这个 <label for="”> “title”, :size => 3 %> 它的工作原理是它显示了我想要的东西,变量和数量框列表,但每当我添加数量并将它们添加到购物车时,它只是默认为列表中的最后一项和最后一个数量框中的数量。 我尝试了一些但没有一个正确,有谁知道我会怎么做呢?

在RubyMine中运行规范时出现rake版本错误; 我可以手动编辑Gemfile.lock

我开始收到此错误,并想要一种方法来解决它: You have already activated rake 10.1.1, but your Gemfile requires rake 10.1.0. Using bundle exec may solve this. 我在RubyMine中运行它。 我可以在我的Gemfile.lock中看到它指定10.1.0。 我可以手动将我的Gemfile.lock更新到10.1.1吗? 如果我做: $gem list …. rake (10.1.1, 10.1.0, 10.0.4, 0.9.2.2) 所以我不确定为什么它不仅仅适用于10.1.0? 这是RubyMine的完整输出: /Users/jt/.rvm/rubies/ruby-1.9.3-p448/bin/ruby -e $stdout.sync=true;$stderr.sync=true;load($0=ARGV.shift) /Users/jt/.rvm/gems/ruby-1.9.3-p448/bin/rake spec Testing started at 3:15 PM … rake aborted! You have already activated rake 10.1.1, but your Gemfile […]

在Rails中的控制器和视图中使用的辅助方法

我知道我可以在Rails中的helper文件夹中的Helper类中放置一个帮助器方法。 然后该方法可以在任何视图中使用。 我知道我可以在ApplicationController类中放置方法,并且该方法可以在任何控制器中使用。 放置控制器和视图中经常使用的方法的适当位置在哪里?

尝试执行任何以“rails”开头的命令会产生“找不到Gemfile”

我正在尝试安装新的rails应用程序。 我已经在我的机器上安装了几个rails应用程序,一切正常。 $ rails new app Could not locate Gemfile 然后我想我会运行一个跟踪来弄清楚发生了什么,因为你不希望此时有一个Gemfile ,因为通常上面的命令会在一个名为app的目录中创建一个全新的rails应用app 。该Gemfile包含的Gemfile 。 $ rails new app –trace Could not locate Gemfile 因此,我尝试通过此详细指南重新安装计算机上的所有内容: http://railsapps.github.com/installing-rails.html#gems 在前20个步骤之后,我得到了这个命令: $ rake -v Could not locate Gemfile 我假设某些地方的设置已关闭,但我看不到任何关闭。 这是我的rvm设置: $ rvm version rvm 1.18.10 (latest) by Wayne E. Seguin , Michal Papis [https://rvm.io/] $ rvm list rvm rubies jruby-1.6.7 […]

WebMock:Rspec – 使用JSON响应测试Facebookvalidation

我很难为我的程序编写规范,因为我需要在填写所有正确的格式信息后validationfacebook ID。 我的facebook ID是从JSON响应中检索的,所以我不知道如何在我的规范中描述它。 我对这个领域很陌生,而且我已经被困在这一点很长一段时间了。 如果有一些示例代码可以帮助我,我将不胜感激。 以下是我的半成品规格。 场景:如果用户名和fbid相同,则使用用户给定的Fbid通过使用“ http://graph.facebook.com ”(JSON响应)来validationFacebook页面。 我的githuburl: https : //github.com/amycheong/company_list 更新:我使用过WebMock但最终获得: 1) Companies new company create with valid information correct facebook id should validate fbid Failure/Error: Company.validate_fbid(‘pepsi’)[‘username’].should == “pepsi” WebMock::NetConnectNotAllowedError: Real HTTP connections are disabled. Unregistered request: GET http://graph.facebook.com:443/pepsi with headers {‘Accept’=>’*/*’, ‘User-Agent’=>’Ruby’} You can stub this request with the following […]

使用Rails Inflections和`rails generate`

我正在尝试生成一个名为ClassAttendance的模型,但Rails一直在命名迁移class_attendances 。 我已经尝试通过将以下代码放在\config\initializers\inflections.rb纠正此问题: ActiveSupport::Inflector.inflections do |inflect| inflect.uncountable “attendance” end 这似乎在rails控制台中工作正常: $ rails console Loading development environment (Rails 3.2.6) irb(main):001:0> “attendance”.pluralize => “attendance” 不幸的是,rails模型生成器似乎不受影响: $ rails generate model ClassAttendance invoke active_record create db/migrate/20120806201910_create_class_attendances.rb create app/models/class_attendance.rb invoke rspec create spec/models/class_attendance_spec.rb 它与此有关吗? irb(main):002:0> “class_attendance”.pluralize => “class_attendances” 还是有其他一些我没看到的问题?