小编are*_*idi的帖子

"游戏化"宝石?

有谁知道"游戏化"的宝石?我正在寻找可以提供Badgeville,BigDoor,Bunchball等功能的东西.看起来像分析之外的那些平台,在某些情况下,创建虚拟奖励的简单设置过程,不要如果你需要的是创建一个简单的基于事件的奖励系统,你可以提供很多自己无法建立的东西.

如果有人知道任何宝石或插件提供了向您的Rails网站添加虚拟奖励和"游戏化"的设置,请告诉我们!

ruby rubygems ruby-on-rails

25
推荐指数
3
解决办法
4521
查看次数

当我在模型上运行RSpec时,为什么会出现"strip"和"downcase"的未定义方法错误?

我正在模型上运行RSpec测试并获取字符串方法的错误,例如:"index",downcase,"和"strip."任何想法为什么会这样,我如何解决它?

ruby testing rspec

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

需要更改S3 Bucket(Carrierwave/Fog)中文件的存储"目录"

我正在使用带有3个独立模型的Carrierwave将照片上传到S3.我保留了上传器的默认设置,即将照片存储在根S3存储桶中.然后我决定根据模型名称将它们存储在子目录中,例如/ avatars,items /等等,根据它们从上传的模型...

然后,我注意到同名文件被覆盖,当我删除模型记录时,照片没有被删除.

我已经从上传者特定的设置更改了store_dir,如下所示:

  def store_dir
    "items"
  end
Run Code Online (Sandbox Code Playgroud)

在模型ID下存储照片的通用版(我使用mongo FYI):

  def store_dir
    "uploads/#{model.class.to_s.underscore}/#{mounted_as}/#{model.id}"
  end
Run Code Online (Sandbox Code Playgroud)

这就是问题所在.我试图将已经进入S3的所有照片移动到S3中的正确"目录"中.从我准备好的,S3本身没有目录.我在rake任务上遇到了麻烦.由于我更改了store_dir,Carrierwave正在查找以前上传到错误目录中的所有照片.

namespace :pics do
  desc "Fix directory location of pictures on s3"
  task :item_update => :environment do
    connection = Fog::Storage.new({
      :provider                 => 'AWS',
      :aws_access_key_id => 'XXXX',
      :aws_secret_access_key => 'XXX'
    })
    directory = connection.directories.get("myapp-uploads-dev")

    Recipe.all.each do |l|
      if l.images.count > 0
        l.items.each do |i|
          if i.picture.path.to_s != ""
            new_full_path = i.picture.path.to_s
            filename = new_full_path.split('/')[-1].split('?')[0]
            thumb_filename = "thumb_#{filename}"
            original_file_path = "items/#{filename}"
            puts "attempting to retrieve: #{original_file_path}"
            original_thumb_file_path …
Run Code Online (Sandbox Code Playgroud)

ruby-on-rails amazon-s3 ruby-on-rails-3 carrierwave fog

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