小编Agi*_*gis的帖子

ImageMagick:运行convert时出错:convert:无法读取字体

我在Mountain Lion上使用Homebrew安装了ImageMagick(minimagick也在我的Gemfile中,但我不认为这是相关的).SimpleCaptcha在Rails应用程序中使用它来创建CAPTCHA.

但是,图像不会导致此错误:

Error while running convert: convert: unable to read font `/usr/local/share/ghostscript/fonts/n019003l.pfb' @ error/annotate.c/RenderFreetype/1123.
convert: Postscript delegate failed `/var/folders/gd/n7rzfhkd5jd0ws8jnzsz34hr0000gn/T/magick-vzHHz4ZP': No such file or directory @ error/ps.c/ReadPSImage/830.
convert: no images defined `/var/folders/gd/n7rzfhkd5jd0ws8jnzsz34hr0000gn/T/simple_captcha20121218-64930-1thtfpf.jpg' @ error/convert.c/ConvertImageCommand/3032.
Run Code Online (Sandbox Code Playgroud)

有任何想法吗?

imagemagick osx-mountain-lion

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

如何在未安装gem时从require"gem_name"进行救援

我正在写一个依赖于特定宝石的库.我需要宝石并在我的代码中使用它,只要宝石安装在用户的机器上,所有东西都是hunky-dory.但如果不是这样呢?!

我认为这很好,因为我可以从require命令中解救并向输出打印一条消息,告知用户缺少的宝石并优雅地完成它但我收到错误!

你能告诉我应该怎么做或这段代码有什么问题:

begin 
 require "some_gem"
rescue
 puts "please install some_gem first!" 
end
Run Code Online (Sandbox Code Playgroud)

ruby rubygems

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

使用acts_as_taggable_on和ActiveAdmin处理标记

我有一个Post模型,我通过ActiveAdmin访问.它也可以使用acts_as_taggable_on gem进行标记.因此,管理员可以添加,编辑或删除特定帖子中的标签.

在管理面板中为资源添加标记功能的常规方法是在admin/posts.rb中执行此操作:

ActiveAdmin.register Post do
  form do |f|
    f.inputs "Details", :multipart => true do
      f.input :tag_list
      # and the other irrelevant fields goes here
    end

    f.buttons
  end
end
Run Code Online (Sandbox Code Playgroud)

但是,我希望从多选表单字段中选择标记,而不是在文本字段中手动输入(就像上面的代码一样).所以我试过这样做:

      f.input :tag_list, :as => :select,
                         :multiple => :true,
                         :collection => ActsAsTaggableOn::Tag.all
Run Code Online (Sandbox Code Playgroud)

但它没有按预期工作.这实际上创建了带有名称的一些整数值的新标签,并将它们分配给该帖子.有人告诉我需要额外的代码才能使用.

关于如何做到这一点的任何线索?这是我的模型,以防万一:http://pastie.org/3911123

提前致谢.

ruby-on-rails acts-as-taggable-on ruby-on-rails-3 activeadmin ruby-on-rails-3.2

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

回形针图像尺寸自定义验证器

这是我的Image模型,其中我实现了一种验证附件尺寸的方法:

class Image < ActiveRecord::Base
  attr_accessible :file

  belongs_to :imageable, polymorphic: true

  has_attached_file :file,
                     styles: { thumb: '220x175#', thumb_big: '460x311#' }

  validates_attachment :file,
                        presence: true,
                        size: { in: 0..600.kilobytes },
                        content_type: { content_type: 'image/jpeg' }

  validate :file_dimensions

  private

  def file_dimensions(width = 680, height = 540)
    dimensions = Paperclip::Geometry.from_file(file.queued_for_write[:original].path)
    unless dimensions.width == width && dimensions.height == height
      errors.add :file, "Width must be #{width}px and height must be #{height}px"
    end
  end
end
Run Code Online (Sandbox Code Playgroud)

这工作正常,但它不可重复使用,因为该方法采用宽度和高度的固定值.我想将其转换为自定义验证器,因此我也可以在其他模型中使用它.我已经阅读了有关此内容的指南,我知道在app/models/dimensions_validator.rb中它会是这样的:

class DimensionsValidator < ActiveModel::EachValidator
  def validate_each(record, attribute, value)
    dimensions = …
Run Code Online (Sandbox Code Playgroud)

ruby-on-rails paperclip ruby-on-rails-3 paperclip-validation

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

在Go中生成素数

编辑:这个问题基本上要求生成最高限度的素数.最初的问题如下.

if如果只满足以下两个条件,我希望我的陈述成为现实:

for i := 2; i <= 10; i++ {

    if i%i == 0 && i%1 == 0 {

    } else {

    }
}
Run Code Online (Sandbox Code Playgroud)

在这种情况下,每个可能的数字都超过了这些条件,但是我只想要数字2,3,5,7,11 ...基本上只有自己可以被分割的数字和1才能过去,除了非常第一个'2'.我怎样才能做到这一点?

谢谢

primes go

7
推荐指数
3
解决办法
5922
查看次数

在Go中初始化结构时使用new vs. {}

所以我知道你可以在GO中以两种不同的方式初始化结构.其中一个是使用new关键字,它返回一个指向内存中结构的指针.或者您可以使用{}来构建结构.我的问题是何时适合使用每种?谢谢

go

5
推荐指数
3
解决办法
232
查看次数

使用Paperclip和Amazon S3的CKEditor gem

我正在使用CKEditor并且我已将其配置为与Paperclip一起使用但我不能告诉它在S3中存储文件,因此它使用Paperclip存储它们但在本地文件系统上.

所以我想知道是否有某种方法告诉Paperclip每次使用时都明确使用S3.

我知道如何在某些模型上配置带有S3的Paperclip(非常简单,在paperclip github wiki上有描述).我正在Heroku上部署,这就是我无法写入本地文件系统的原因.

ruby-on-rails amazon-s3 paperclip ckeditor

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