小编RMc*_*irn的帖子

OpenURI :: HTTPError 403 Forbidden - 打开存储在S3上的资产的回形针网址(雾宝石)

我调用了我的文档控制器下载操作,为客户端提供从s3检索到的可下载对象.但是,OpenURI似乎无法解析已存储的url paperclip.这个URL可以在浏览器中访问而没有任何问题,但是当试图在控制器中打开它时,我得到403 Forbidden错误.

documents_controller

  def download
    data = open(Document.find(params[:id]).upload.url)
    send_data data.read, :type => data.content_type, :x_sendfile => true
  end
Run Code Online (Sandbox Code Playgroud)

一个例子网址

"https://s3.amazonaws.com/mybucket/documents/1/Screen_Shot.png?1372238888"
Run Code Online (Sandbox Code Playgroud)

错误 - OpenURI :: HTTPError 403当URL打开时,禁止在动作的第一行拍摄.知道它可能是什么?

ruby-on-rails amazon-s3 paperclip http-status-code-403 ruby-on-rails-3

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

厨师独奏 - 流浪汉建立错误

我一直在努力奋斗几个小时,似乎没有取得任何进展.关于我应该开始调试这个的任何提示将不胜感激.

我试图配置一个流浪汉机器并得到以下错误.

`==> default: Running provisioner: chef_solo...
Generating chef JSON and uploading...
==> default: Running chef-solo...
==> default: stdin: is not a tty
==> default: [2014-05-14T11:16:08+00:00] INFO: *** Chef 10.14.2 ***
==> default: [2014-05-14T11:16:08+00:00] INFO: Setting the run_list to ["recipe[nginx]"] from JSON
==> default: [2014-05-14T11:16:08+00:00] INFO: Run List is [recipe[nginx]]
==> default: [2014-05-14T11:16:08+00:00] INFO: Run List expands to [nginx]
==> default: [2014-05-14T11:16:08+00:00] INFO: Starting Chef Run for precise64
==> default: [2014-05-14T11:16:08+00:00] INFO: Running start handlers
==> default: [2014-05-14T11:16:08+00:00] INFO: Start …
Run Code Online (Sandbox Code Playgroud)

chef-infra vagrant chef-solo berkshelf

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

solr sunspot - 搜索belongs_to association

我有一个属于多个其他表的结构模型.

class Fabric < ActiveRecord::Base
  validates :name, presence: true
  belongs_to :design
  belongs_to :composition
  belongs_to :collection
  belongs_to :style
  belongs_to :origin
  belongs_to :texture
  belongs_to :supplier
  has_and_belongs_to_many :colours

  searchable do
    text :name, :boost => 5 
    text :description
    text :composition do
      composition.name
   end
    text :collection do
      collection.name
    end
   text :style do
     style.name
   end
   text :origin do
     origin.name
   end
   text :texture do
     texture.name
  end
   text :supplier do
      supplier.name
  end
  end
  end
Run Code Online (Sandbox Code Playgroud)

我已经设置了所有反向关联(Has_many)等.但是我似乎无法通过全文搜索来查询所有这些关联表的名称字段.

任何帮助将不胜感激.

 @search = Fabric.search do
    fulltext params[:search]
  end
  @fabrics = @search.results
Run Code Online (Sandbox Code Playgroud)

罗斯

solr full-text-search ruby-on-rails sunspot ruby-on-rails-3

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

如何使用CIE94公式将单个RGB值与集合进行比较以找到最接近的匹配 - 在Ruby中,

我有一个RGB值,我想从120种颜色的集合中找到与该RGB值最接近的匹配.

根据我的收集,实施此类检查的最准确方法之一是使用CIE94公式.但是,我在使用Ruby实现它时遇到了麻烦.

你怎么建议我这样做?

          R1, G1, B1 = pixel.red, pixel.green, pixel.blue
          c = Colour.first
              R2, G2, B2 = (c.red * 256), (c.green * 256), (c.blue * 256)

              C1 = Math.sqrt((G1**)+(G2**))
              C2 = Math.sqrt((B1**)+(B2**))
              CAB = C1 - C2

              DA = G1 - G2
              DB = B1 - B2

              DH = Math.sqrt((DA** + DB** - CAB**))

              divergence = Math.sqrt( ((R1-R2)/2)** + (CAB/ (1+(0.048*C1)))** + ( DH / ( 1 + ( 0.014 * C1))** )
Run Code Online (Sandbox Code Playgroud)

根据其中一个建议使用LCMS的建议,我刚刚意识到RMagick(Imagemagick)我正在使用的ruby库,实际上是在拉入LCMS.这意味着我可以访问某些功能 - "预先烘焙".有人知道使用RMagick实现上述方法吗?

ruby math rgb

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

Activerecord OR条件为Joined表的属性

我想写一个返回的查询

  • user_id = self.id OR的所有任务
  • 所有相关旅行的booker_id = self.id的任务

    Task.joins(:trip).where('user_id = ? OR trip.booker_id = ?', self.id, self.id)
    
    Run Code Online (Sandbox Code Playgroud)

以上返回错误

  PG::AmbiguousColumn: ERROR:  column reference "user_id" is ambiguous
Run Code Online (Sandbox Code Playgroud)

任何帮助/解释将不胜感激

mysql sql activerecord ruby-on-rails ruby-on-rails-4

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

Capistrano Bundler在部署时出错

我正在尝试使用capistrano来部署和捆绑我的rails应用程序.当我运行cap部署 - 或者更具体地说

bundle exec cap staging bundler:install --trace
Run Code Online (Sandbox Code Playgroud)

我似乎对以下堆栈跟踪有永久性错误.

** Invoke staging (first_time)
** Execute staging
** Invoke load:defaults (first_time)
** Execute load:defaults
** Invoke bundler:map_bins (first_time)
** Execute bundler:map_bins
** Invoke bundler:install (first_time)
** Execute bundler:install
DEBUG [bd567504] Running /usr/bin/env if test ! -d /var/www/TMC/current; then echo "Directory does not exist '/var/www/TMC/current'" 1>&2; false; fi on 162.243.225.14
DEBUG [bd567504] Command: if test ! -d /var/www/TMC/current; then echo "Directory does not exist '/var/www/TMC/current'" 1>&2; false; fi
DEBUG [bd567504] Finished …
Run Code Online (Sandbox Code Playgroud)

capistrano ruby-on-rails bundler

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

匹配对多个数字范围的响应

我有一个方法,将返回1到100之间的数字

取决于响应(x)是否在100-90之间我想要一个响应,89-85另一个84-72另一个......等等

我用

if x > 90
 response a
elsif x > 85
 response b
elsif etc...
Run Code Online (Sandbox Code Playgroud)

但这看起来有点乱,是否有更好的重构方法?

非常感谢.

ruby logic functional-programming

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