我想执行一个更新原始sql,如下所示:
update table set f1=? where f2=? and f3=?
Run Code Online (Sandbox Code Playgroud)
这个SQL将由执行ActiveRecord::Base.connection.execute,但我不知道如何将动态参数值传递给方法.
有人可以给我任何帮助吗?
如果有一个长网址,我想生成一个像twitter中那样的简短网址,有没有办法在ruby中实现?
先感谢您.
我有一个像以下的js对象:
obj = {
name: 'js',
age: 20
};
Run Code Online (Sandbox Code Playgroud)
现在我想访问obj的name字段,但我只能获得字符串'name',所以如何将'name'转换为obj的字段名,然后获得像obj.name这样的结果.
先感谢您.
我拿一个像html一样的html片段
"<li>? ? ?"
Run Code Online (Sandbox Code Playgroud)
它包含" ",但在调用to_sNokogiri NodeSet之后,它变成了
"<li>? ? ?"
Run Code Online (Sandbox Code Playgroud)
,我想保持原有的HTML片段,并试图设置:save_with option的to_s方法,但未能成功.
有人会遇到同样的问题并给我帮助吗?先感谢您.
我使用Passenger来启动我的Rails应用程序,但在我启动Nginx之后,Rails应用程序工作正常,但我restart.txt在tmpdir 下找不到任何文件.
它是由乘客还是手动自动创建的?如果自动为什么不存在?
我的env是Linux centos,并使用ruby 1.8.7,代码如下:
require 'rubygems'
require 'RMagick'
Magick::Image.read("http://image.domain.com/image.darenhui.com/images/random_bg/01.jpg")[0]
Run Code Online (Sandbox Code Playgroud)
它抛出如下错误:
in `read': no decode delegate for this image format `//image.domain.com/images/random_bg/01.jpg' @ error/constitute.c/ReadImage/532 (Magick::ImageMagickError),
Run Code Online (Sandbox Code Playgroud)
但如果我从当地读到:
require 'rubygems'
require 'RMagick'
Magick::Image.read("/local/staticimages/random_bg/01.jpg")[0]
Run Code Online (Sandbox Code Playgroud)
一切都好.我运行识别-list格式,见下文:
JPEG* JPEG rw- Joint Photographic Experts Group JFIF format (62)
JPG* JPEG rw- Joint Photographic Experts Group JFIF format (62)
Run Code Online (Sandbox Code Playgroud)
但是当我通过身份测试"http://image.domain.com/image.darenhui.com/images/random_bg/01.jpg"失败时,"/local/staticimages/random_bg/01.jpg"成功了
有人能给我一些线索吗?先感谢您.
我想用来String.hash生成哈希码,但我担心如果一段时间后我将版本从1.8升级到1.9,生成的哈希码也会改变.
Ruby 1.8和1.9是否具有相同的字符串哈希码?
我使用下面的代码:
puts "matched" if "??" =~ /\w+/
Run Code Online (Sandbox Code Playgroud)
它让"matched"我感到惊讶,因为"中国"是两个汉字,它不是0-9,az,AZ和_中的任何一个,而是输出"匹配"的原因.
有人能给我一些线索吗?
我的应用程序控制器名为McController,它扩展了ApplicationController,我在McController中设置了一个名为@@ scheduler_map的类变量,如下所示:
class McController < ApplicationController
@@scheduler_map = {}
def action
...
end
private
def get_scheduler(host, port)
scheduler = @@scheduler_map[host+"_"+port]
unless scheduler
scheduler = Scheduler.create(host, port)
@@scheduler_map[host+"_"+port] = scheduler
end
scheduler
end
end
Run Code Online (Sandbox Code Playgroud)
但我发现从第二个请求开始@@ scheduler_map始终是一个空哈希,我在开发环境中运行它,有人知道原因吗?那与运行环境有关吗?
先感谢您.
在ruby中ActiveRecord不提供动态绑定更新和插入sqls,当然我可以使用原始sql,但是需要维护连接,所以我想知道是否有更简单的方法来逃避更新或插入sql之前执行下面的代码:
ActiveRecord::Base.connection.insert(sql)
Run Code Online (Sandbox Code Playgroud)
我想我可以用gsub编写代码,但我知道是否有一个现成的方法来做到这一点.
ruby ×5
activerecord ×2
hash ×1
imagemagick ×1
javascript ×1
nokogiri ×1
passenger ×1
rawsql ×1
regex ×1
rmagick ×1
short-url ×1