小编Chi*_*iya的帖子

||之间的区别 a = b和a = a || b红宝石?

任何人都可以点亮这个表达.似乎两者都相同,但事实并非如此.

a || a = b or a ||= b
Run Code Online (Sandbox Code Playgroud)

a = a || b
Run Code Online (Sandbox Code Playgroud)

如果

a = 4而且b = 6,输出总是如此4

这总是让我感到困惑和误解.有人可以解释一下吗?

ruby

6
推荐指数
1
解决办法
781
查看次数

Amazon S3中的Errno :: ENOENT(无此类文件或目录)

我有使用Amazon S3将图像发布到存储桶中的应用程序部署到heroku的应用程序。但是,当获取相同的图像时,会出现错误:

Errno::ENOENT (No such file or directory showing path s3.amazonaws.com/bucket_name/app/public/messages/images/000/000/061/thumb/images.jpeg?1362410115)
Run Code Online (Sandbox Code Playgroud)

无法在浏览器的URL中进行相同的路径复制和粘贴。如果我将存储桶名称用作终点,则可以使用以下路径

/bucket_name.s3.amazonaws.com/app/public/messages/images/000/000/061/thumb/images.jpeg?1362410115.
Run Code Online (Sandbox Code Playgroud)

但是我不知道如何在我的模型中配置此URL。我正在按照heroku的方式配置aws-sdk。

 https://devcenter.heroku.com/articles/paperclip-s3
Run Code Online (Sandbox Code Playgroud)

模型has_attached_file似乎我在这里缺少什么。有关其余的配置,请检查上面的链接。

has_attached_file :image, :styles => { :medium => "100x100>", :thumb => "100x100>" }
Run Code Online (Sandbox Code Playgroud)

谢谢

heroku amazon-s3 ruby-on-rails-3 ruby-on-rails-3.1 ruby-on-rails-3.2

5
推荐指数
1
解决办法
3046
查看次数

使用rails和postgresql中的键值进行不区分大小写的搜索

我写的搜索功能正在运行,但我希望它不区分大小写.
我怎么能让它变得麻木不仁,虽然我不想改变条件因为它运行得很好.所有四个参数都是可选的,如果它们中的任何一个基于这种条件而存在.

conditions = {}
conditions['first_name'] = params[:first_name] unless params[:first_name].blank?
conditions['last_name'] = params[:last_name] unless params[:last_name].blank?
conditions['specialities.name'] = params[:speciality] unless params[:speciality].blank?
conditions['locations.zipcode'] = params[:zipcode] unless params[:zipcode].blank?

search = Model.using_scope.where(conditions)
Run Code Online (Sandbox Code Playgroud)

我使用PostgreSQL作为区分大小写的数据库.

ruby postgresql activerecord ruby-on-rails

3
推荐指数
1
解决办法
1744
查看次数

如何在内部使用连接包含在rails活动记录查询中?

我只是想改进查询,以便提高应用程序的性能.

 Student.includes(:parents =>:emails).where("emails.email_address is not null and emails.email_address != ''")
Run Code Online (Sandbox Code Playgroud)

我只是想使用电子邮件表满足条件,所以显然不需要eagerload电子邮件表,而是我更喜欢加入.但我无法弄清楚,如何使用包含和连接在一起?所以它应该加载父母并加入电子邮件

activerecord ruby-on-rails ruby-on-rails-3 ruby-on-rails-3.2

3
推荐指数
1
解决办法
3225
查看次数

Ruby on Rails:RVM和Rubygems错误

我刚刚完成了"rvm ruby​​gems 1.3.5"和"gem install rails -v 2.2.2",两者都正常工作,我能够使用rails一段时间.

现在看起来铁轨和rubygems突然消失了,所以我重新安装了rubygem,但现在尝试重新安装导轨,我得到了

ERROR:  While executing gem (NameError) uninitialized constant gem::Installer::ENV_PATHS
Run Code Online (Sandbox Code Playgroud)

我试图做同样的错误

gem update --system
Run Code Online (Sandbox Code Playgroud)

非常感谢任何帮助.

和我的

gem list shows rails(2.2.2)
Run Code Online (Sandbox Code Playgroud)

我正试图找到其他有类似问题的人,看起来它可能与GEM PATH有关,但我不知道从那里去哪里.在"宝石环境"中,我得到了GEM PATHS:

~/.rvm/gems/ruby-1.8.7-p371 <br />
~/.rvm/gems/ruby-1.8.7-p371@global <br />
Run Code Online (Sandbox Code Playgroud)

ruby rubygems ruby-on-rails

2
推荐指数
2
解决办法
1705
查看次数

将一个数组的每个元素连接到ruby中其他数组的每个元素

我有两个数组,我可以加入它们循环这两个数组.但有更好的方法吗?

colors = ['yellow', 'green']
shirts = ['s','m','xl','xxl']
Run Code Online (Sandbox Code Playgroud)

需要输出:

output = ['yellow_s','yellow_m','yellow_xl','yellow_xxl','green_s','green_m','green_x','green_xxl']
Run Code Online (Sandbox Code Playgroud)

ruby arrays ruby-on-rails ruby-on-rails-3

1
推荐指数
1
解决办法
78
查看次数