小编Mar*_*pka的帖子

加载RubyGems插件时出错,openssl.bundle(LoadError)

我是红宝石的新手.当我键入任何与gem相关的东西时,会发生以下错误.为什么会导致它以及如何解决问题?谢谢!

Error loading RubyGems plugin "/Users/chiang/.rvm/gems/ruby-2.0.0-p247@global/gems/rubygems-bundler-1.2.2/lib/rubygems_plugin.rb": dlopen(/Users/chiang/.rvm/rubies/ruby-2.0.0-p247/lib/ruby/2.0.0/x86_64-darwin12.3.0/openssl.bundle, 9): Library not loaded: /opt/local/lib/libssl.1.0.0.dylib
  Referenced from: /Users/chiang/.rvm/rubies/ruby-2.0.0-p247/lib/ruby/2.0.0/x86_64-darwin12.3.0/openssl.bundle
  Reason: image not found - /Users/chiang/.rvm/rubies/ruby-2.0.0-p247/lib/ruby/2.0.0/x86_64-darwin12.3.0/openssl.bundle (LoadError)
Run Code Online (Sandbox Code Playgroud)

ruby rubygems

23
推荐指数
3
解决办法
2万
查看次数

将Ruby哈希转换为JSON(没有转义字符)

我有一个哈希:

my_hash = {"bob.johnson@example.com"=>{"first"=>"Bob", "last"=>"Johnson"}, "lisa.dell@example.com"=>{"first"=>"Lisa", "last"=>"Dell"}}
Run Code Online (Sandbox Code Playgroud)

当我尝试将其序列化时,my_hash.to_json这就是我得到的:

"{\"bob.johnson@example.com\":{\"first\":\"Bob\",\"last\":\"Johnson\"},\"lisa.dell@example.com\":{\"first\":\"Lisa\",\"last\":\"Dell\"}}"
Run Code Online (Sandbox Code Playgroud)

如何在不获取转义字符的情况下将Hash转换为JSON格式?

ruby hash serialization json ruby-on-rails

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

Hash#keys方法的输出错误

在某些情况下Hash#keys,2.4版之前的Ruby无法正常工作

演示代码:

h = { a: 1, b: 2, c: 3 }
h.each do |k, v|
    h.delete(:a)
    p h
    p h.keys
    break
end
Run Code Online (Sandbox Code Playgroud)

Ruby 2.3.8的输出:

{:b=>2, :c=>3}
[:b]
Run Code Online (Sandbox Code Playgroud)

Ruby 2.5.1输出:

{:b=>2, :c=>3}
[:b, :c]
Run Code Online (Sandbox Code Playgroud)

我同意在迭代时修改哈希值不是很好。但是我没有看到哈希值修改和工作键方法之间的关系。

为什么会这样呢?

ruby

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

跳过对创建方法的验证

我需要跳过对创建方法的验证。我使用的是 Rails 4 和 ruby​​ 2

我试过这样

@model.save(:validate => false)
Run Code Online (Sandbox Code Playgroud)

它不工作

ruby-on-rails

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

业务规则集成到用户故事

我有一套用户故事,我有一套业务规则(主要是法律约束我的要求是合规的).在Agile SDLC中,我不确定这些"规则"在哪里附加到我的用户故事中.

例如,用户故事如:

作为医生,我想添加患者信息以创建新的患者档案.

和以下规则:

必须在每位患者的记录中输入以下信息:(a)患者:(i)姓名和名字; (ii)地址; (iii)出生日期; (iv)性别;

这两个显然是在一起,但我如何链接它们?作为我的用户故事中的测试验收定义?另一个用户故事?

agile requirements user-stories business-rules

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

无法捆绑安装'open-uri'

我是Rails的新手.我正在制作一个Web应用程序,我正在使用nokogiri搜索不同的网站以从中提取文本.所以在Gemfile中,我写了'nokogiri'和'open-uri',但是当我捆绑安装时,我得到了这个错误:

Could not find gem 'open-uri (>= 0) ruby' in the gems available on this machine
Run Code Online (Sandbox Code Playgroud)

但是当我在我的控制台中确实需要'open-uri'时,它显示是.那么为什么我不能捆绑安装,或者有什么替代方案呢?

ruby rubygems ruby-on-rails nokogiri

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

未捕获的ReferenceError:未定义$ scope

加载页面时收到错误.我正在尝试将新对象附加到条目数组中.

在此输入图像描述

在此输入图像描述

代码有什么问题?

的index.html

Raffler

<div ng-controller="RaffleCtrl">

  <form ng-sumbit="addEntry">
    <input type="text" ng-model="newEntry.name">
    <input type="submit" value="Add">
  </form>

  <ul>
    <li ng-repeat="entry in entries">{{entry.name}}</li>
  </ul>
</div>
Run Code Online (Sandbox Code Playgroud)

raffle.js

angular.module('myApp', []).controller("RaffleCtrl", function ($scope) {
  $scope.entries = [
      {
        name: "Larry"
      }, {
        name: "Curly"
      }, {
        name: "Moe"
      }
    ]
});

$scope.addEntry = function () {
  $scope.entries($scope.newEntry)
  $scope.newEntry = {}
};
Run Code Online (Sandbox Code Playgroud)

javascript angularjs

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

需要实现#cache!如果你想使用 Cloudinary::CarrierWave::Storage 作为缓存存储

尝试上传图片时出现此错误“需要实现 #cache!如果您想使用 Cloudinary::CarrierWave::Storage 作为缓存存储。” 它在我的控制器中突出显示了这部分代码:

def update
  @company.update(company_params)
  redirect_to company_path(@company)
end
Run Code Online (Sandbox Code Playgroud)

我正在使用 Carrierwave 将照片上传到 cloudinary。我有一个包含我的配置的 cloudinary.yml 文件,以及我的初始值设定项中有一个 cloudinary.rb 文件。

identitylogo_uploader.rb

class IdentitylogoUploader < CarrierWave::Uploader::Base
  include Cloudinary::CarrierWave


  process :convert => 'png'
  process :tags => ['logo_entreprise']

  version :standard do
    process :resize_to_fill => [150, 150, :north]
  end

  version :thumbnail do
    resize_to_fit(50, 50)
  end


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

公司.rb

class Company < ApplicationRecord
  mount_uploader :identitylogo, IdentitylogoUploader
end
Run Code Online (Sandbox Code Playgroud)

company_controller.erb

def update
  @company.update(company_params)
  redirect_to company_path(@company)
end

def company_params
  params.require(:company).permit(:identitylogo, :name, :industry, 
  :employees, :website)
end
Run Code Online (Sandbox Code Playgroud)

_form.erb …

ruby-on-rails carrierwave cloudinary

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

Ruby中关于Dir []和File.join()的困惑

我遇到一个简单的程序有关Dir[],并File.join()在Ruby中,

blobs_dir = '/path/to/dir'
Dir[File.join(blobs_dir, "**", "*")].each do |file|
       FileUtils.rm_rf(file) if File.symlink?(file)
Run Code Online (Sandbox Code Playgroud)

我有两个困惑:

首先,第二和第三参数的含义是File.join(@blobs_dir, "**", "*")什么?

其次,Dir[]Ruby中的用途是什么?我只知道它等同于Dir.glob(),但是我不清楚Dir.glob()

ruby file dir

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

rspec接收方法无法按预期工作

我无法理解为什么以下代码在运行我的测试时在rspec中不起作用.

Lead.update_status(2,2,true)
expect(Lead).to receive(:update_status).with(2, 2, true)
Run Code Online (Sandbox Code Playgroud)

我也试过了

Lead.update_status(2,2,true)
expect_any_instance_of(Lead).to receive(:update_status).with(2, 2, true)
Run Code Online (Sandbox Code Playgroud)

错误II得到的是

(<Lead(id: integer, contact_id: integer, course_presentation_id: integer, status: integer, created_by_user_id: integer, updated_by_user_id: integer, created_at: datetime, updated_at: datetime, mailchimp_status: integer) (class)>).update_status(2, 2, true)
           expected: 1 time with arguments: (2, 2, true)
           received: 0 times with arguments: (2, 2, true)
Run Code Online (Sandbox Code Playgroud)

请注意,如果我将"test"添加到我的代码中,则会打印出来,因此我知道update_status实际上正在运行.

有任何想法吗?谢谢.

ruby rspec ruby-on-rails ruby-on-rails-4

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