小编Bin*_*gic的帖子

BigDecimal不能强制转换为BigDecimal

这应该很简单,但它正在爆炸.有任何想法吗?

d = BigDecimal.new("2.0")
YAML::load({:a => d}.to_yaml)
TypeError: BigDecimal can't be coerced into BigDecimal
from /Users/benjohnson/.rvm/rubies/ruby-1.9.3-p125/lib/ruby/1.9.1/irb/inspector.rb:86:in `inspect'
from /Users/benjohnson/.rvm/rubies/ruby-1.9.3-p125/lib/ruby/1.9.1/irb/inspector.rb:86:in `inspect'
from /Users/benjohnson/.rvm/rubies/ruby-1.9.3-p125/lib/ruby/1.9.1/irb/inspector.rb:86:in `block in <module:IRB>'
from /Users/benjohnson/.rvm/rubies/ruby-1.9.3-p125/lib/ruby/1.9.1/irb/inspector.rb:30:in `call'
from /Users/benjohnson/.rvm/rubies/ruby-1.9.3-p125/lib/ruby/1.9.1/irb/inspector.rb:30:in `inspect_value'
from /Users/benjohnson/.rvm/rubies/ruby-1.9.3-p125/lib/ruby/1.9.1/irb/context.rb:260:in `inspect_last_value'
from /Users/benjohnson/.rvm/rubies/ruby-1.9.3-p125/lib/ruby/1.9.1/irb.rb:311:in `output_value'
from /Users/benjohnson/.rvm/rubies/ruby-1.9.3-p125/lib/ruby/1.9.1/irb.rb:160:in `block (2 levels) in eval_input'
from /Users/benjohnson/.rvm/rubies/ruby-1.9.3-p125/lib/ruby/1.9.1/irb.rb:273:in `signal_status'
from /Users/benjohnson/.rvm/rubies/ruby-1.9.3-p125/lib/ruby/1.9.1/irb.rb:156:in `block in eval_input'
from /Users/benjohnson/.rvm/rubies/ruby-1.9.3-p125/lib/ruby/1.9.1/irb/ruby-lex.rb:243:in `block (2 levels) in each_top_level_statement'
from /Users/benjohnson/.rvm/rubies/ruby-1.9.3-p125/lib/ruby/1.9.1/irb/ruby-lex.rb:229:in `loop'
from /Users/benjohnson/.rvm/rubies/ruby-1.9.3-p125/lib/ruby/1.9.1/irb/ruby-lex.rb:229:in `block in each_top_level_statement'
from /Users/benjohnson/.rvm/rubies/ruby-1.9.3-p125/lib/ruby/1.9.1/irb/ruby-lex.rb:228:in `catch'
from /Users/benjohnson/.rvm/rubies/ruby-1.9.3-p125/lib/ruby/1.9.1/irb/ruby-lex.rb:228:in `each_top_level_statement'
from /Users/benjohnson/.rvm/rubies/ruby-1.9.3-p125/lib/ruby/1.9.1/irb.rb:155:in `eval_input'
from /Users/benjohnson/.rvm/rubies/ruby-1.9.3-p125/lib/ruby/1.9.1/irb.rb:70:in `block in …
Run Code Online (Sandbox Code Playgroud)

ruby serialization yaml bigdecimal

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

通过ruby进行字符串编码:安全地捕获用户输入

我搜索了一个简单的解决方案的高低.没有一个是简单的或"只是工作".

首先,我不断收到此错误:

ArgumentError: invalid byte sequence in US-ASCII
Run Code Online (Sandbox Code Playgroud)

这是因为用户正在从Microsoft Word复制和粘贴内容.我只想要一种方法来清理用户输入,以便它以适当的格式存储在数据库中,无论它们发送给我的格式如何.即使它完全破坏了他们的输入,我也不关心它.我只是想强制将他们的输入编码为以后不会抱怨的东西.

我试过了:

ic = Iconv.new('US-ASCII//IGNORE', 'US-ASCII')
safe_string = ic.iconv(unsafe_string)
Run Code Online (Sandbox Code Playgroud)

执行上述操作并重新保存新字符串后,错误仍然存​​在.我试过了

safe_string = unsafe_string.force_encoding('US-ASCII')
Run Code Online (Sandbox Code Playgroud)

仍然给我错误.

我也尝试过使用UTF-8.一样.

在保存到数据库之前,我能做些什么来简单地转换它们的字符串吗?谢谢.

ruby character-encoding

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

PostgreSQL触发器没有返回任何内容

我在创建时有一个PostgreSQL触发器,它基本上将插入重定向到子表.一旦我插入记录,我想要中止请求以避免重复数据.我知道的唯一方法就是返回NULL触发器.问题是我需要返回记录,以便我可以获取ID.如果我回来NULL,我得到... NULL.

任何想法我怎么能有一个触发器中止一个操作,同时仍然返回其他东西NULL

postgresql triggers plpgsql

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

如何安装通过自制程序安装的Postgresql的Trigram模块?

所以我通过Homebrew安装了Postgresql,看起来像contrib目录丢失了.我读过安装Trigram的所有教程都需要这个.

$ cd /usr/local/Cellar/postgresql/9.1.2/share/postgresql/contrib
-bash: cd: /usr/local/Cellar/postgresql/9.1.2/share/postgresql/contrib: No such file or directory
Run Code Online (Sandbox Code Playgroud)

任何人都可以指出我正确的方向来安装Trigram(pg_trgm.sql)?我迷失在这里.

谢谢.

postgresql homebrew module

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

javascript nodeType是1,不管是什么?

我正在尝试使用jquery在页面上查找所有文本节点.但无论我选择哪个元素,nodeType始终为1:

$.each($('*'), function(index, el) { console.log(el.nodeType) });
Run Code Online (Sandbox Code Playgroud)

这导致控制台中只输出"1".并证明页面上有一个"文本节点":

$('p:first').html()
=> "
            I'm text
          "

$('p:first')[0].nodeType
=> 1
Run Code Online (Sandbox Code Playgroud)

我在这里错过了什么?我正在使用safari 5.0.4.我在firefox 3.6.12中得到了相同的结果.

谢谢.

javascript jquery dom

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

jquery Post:请求uri太长时间

所以这是一个有趣的问题.我发布到一个Web服务,我得到的请求URI太长了.jQuery似乎将我的数据附加到URL:

// this is dynamically generated, and can get very long
var s = 'q=string1&q=string2';

$.ajax({
  type: 'POST',
  url: 'https://www.googleapis.com/language/translate/v2?',
  data: s,
  dataType: 'jsonp'
});
Run Code Online (Sandbox Code Playgroud)

我也尝试过:

data: {data: s}
Run Code Online (Sandbox Code Playgroud)

一样.

棘手的部分是我需要翻译多个项目.Google要求您多次传递'q'变量.不是数组,而是多次相同的参数.这看起来很棒.因此,消除了使用json对象,因为你不能拥有两次相同的密钥.因此我必须传递一个字符串.

知道如何实现这一点并获取请求体中的数据而不是URI吗?

谢谢.

jquery post

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