Nexus Weblogging
ChinaonRails

如果你已经有账户,那么请 登入 或者现在就 注册一个新账户
ChinaonRails / Ruby on Rails / Ask   

  升ruby1.9.2后,rails2.3.8无法运行

在 archlinux 上,原是 ruby1.9.1及rails2.3.8。
整个系统更新ruby自动升成1.9.2。
一开始要执行 gem 时,就出现错误讯息,
参考了:
http://paper.atso-net.jp/diary/index.fcgi?date=20100819
将 rubygems rubygems.rb ubygems.rb 移开,
gem 就可正常运行,
但到 rails 去 thin start -d 时,
出现的讯息是:
>> Writing PID to tmp/pids/thin.pid
>> Using rails adapter
Missing the Rails 2.3.8 gem. Please `gem install -v=2.3.8 rails`, update your RAILS_GEM_VERSION setting in config/environment.rb for the Rails version you do have installed, or comment out RAILS_GEM_VERSION to use the latest version installed.
若把 environments.rb 将 RAILS_GEM_VERSION 前面加上 #,
却是:
>> Using rails adapter
Missing the Rails gem. Please `gem install -v= rails`, update your RAILS_GEM_VERSION setting in config/environment.rb for the Rails version you do have installed, or comment out RAILS_GEM_VERSION to use the latest version installed.
>> Exiting!

不晓得 ruby 升成 1.9.2 后,
该怎么让原有的 gem 及原来的 rails 2.3.8 能正常运行?... 3 篇回复 | 参与讨论 | cor | Add to del.icio.us | Add to reddit | Search in Technorati | Add to Ma.gonolia | Add to BlogMarks | Add to LookSmart FURL | Add to Spurl | Add to simpy | Add to Tailrank

  如何安装mysql2

当前环境:
mac os x 10.6
rvm 1.0
ruby 1.9.2
rails 3.0.0
xampp(集成apausrche mysql php, 已安装 xampp-dev)

安装mysql2,试了多种方式都不成功。
gem install mysql2 -- --with-mysql-config=Applications/xampp/xamppfiles/bin/mysql_config

前面加上 env ARCHFLAGS="-arch i386_64" 也是一样

提示如下:
Building native extensions. This could take a while...
ERROR: Error installing mysql2:
ERROR: Failed to build gem native extension.

~/.rvm/rubies/ruby-1.9.2-p0/bin/ruby extconf.rb --with-mysql-config=Applications/xampp/xamppfiles/bin/mysql_config
checking for rb_thread_blocking_region()... yes
*** extconf.rb failed ***... 4 篇回复 | 参与讨论 | zbage | Add to del.icio.us | Add to reddit | Search in Technorati | Add to Ma.gonolia | Add to BlogMarks | Add to LookSmart FURL | Add to Spurl | Add to simpy | Add to Tailrank

  ruby如何使用代理服务器?

请问ruby有什么库可以使用代理服务器?具体这么用呢?

require 'open-uri'
web="www.sample.com"
open(web){|webfile| puts webfile.read}
通常,我使用上面的方法打开一个网页,如果www.sample.com被墙了,只有使用代理服务器,请问,如何在ruby中完成呢,请提供一个具体的代码,写一个具体可用的免费代理服务器,谢谢... 13 篇回复 | 参与讨论 | luofeiyu | Add to del.icio.us | Add to reddit | Search in Technorati | Add to Ma.gonolia | Add to BlogMarks | Add to LookSmart FURL | Add to Spurl | Add to simpy | Add to Tailrank

  茴香豆的回字有几种写法

这是入门者困惑的问题之一,你有选择流行输入法的权利,不必跟风使用。

http://chinaonrails.com/topic/view/138.html

Matz的一本比较老的书叫Ruby in a Nutshell对各种写法总结的比较全面,好像东方人都有孔乙己的相似情结。

早期代码中类似
%Q!foo!
也挺多,给初学者不适应的困扰。

对%百分号表示法和其它的符号象分隔符The delimiter !
( [ { < 看顺眼,就是逐步喜欢上ruby的第一步。

cookoo的惯用法列表,并不是唯一管用的或官方的,就像回字可以有多种写法,不用都掌握,能认出来,是初学阶段必须要过的门槛。这叫ruby way,ruby的行事方式。看起来自由散漫,天马行空,不过你可以老老实实地或自以为踏踏实实地用个人习惯的风格来写自己看得懂的代码。

http://www.javaeye.com/article/24642... 6 篇回复 | 参与讨论 | bd7lx | Add to del.icio.us | Add to reddit | Search in Technorati | Add to Ma.gonolia | Add to BlogMarks | Add to LookSmart FURL | Add to Spurl | Add to simpy | Add to Tailrank

  ruby如何打开xml?

有个xml文件,我可否用ruby将它以html形式,通过浏览器来显示?... 8 篇回复 | 参与讨论 | luofeiyu | Add to del.icio.us | Add to reddit | Search in Technorati | Add to Ma.gonolia | Add to BlogMarks | Add to LookSmart FURL | Add to Spurl | Add to simpy | Add to Tailrank

  如何使用erb?

从网上找了一些erb的资料,看不太懂,以一个实例请教一下
有一个csv文件,只有两行两列
2,3
4,5
请问,如何写个ruby程序,做到:
1.生成下面的html文件
<table >
<tr>
<td>2</td>
<td>3</td>
</tr>
<tr>
<td>4</td>
<td>5</td>
</tr>
</table>
2.如何运行这个ruby程序后,生成html页面形式的表格?... 4 篇回复 | 参与讨论 | luofeiyu | Add to del.icio.us | Add to reddit | Search in Technorati | Add to Ma.gonolia | Add to BlogMarks | Add to LookSmart FURL | Add to Spurl | Add to simpy | Add to Tailrank

  给数组增加元素

pt@pt-laptop:~$ irb
irb(main):001:0> a=[1,2]
=> [1, 2]
irb(main):002:0> a<<3
=> [1, 2, 3]
irb(main):003:0> a<<3
=> [1, 2, 3, 3]
<<可以从末端给数组增加元素,有无现成的方法可以做到:
从已有数组的末端增加元素,但是当这个元素已经存在时,不增加。
(我知道可以写几句话做到)
请问,ruby有无现成的这样一个方法?... 9 篇回复 | 参与讨论 | luofeiyu | Add to del.icio.us | Add to reddit | Search in Technorati | Add to Ma.gonolia | Add to BlogMarks | Add to LookSmart FURL | Add to Spurl | Add to simpy | Add to Tailrank

  怎么安装 Rails 3 RC 版?

各位早上好!

Rails 3 很快就要发布,为了在一台机器上同时使用 Rails 2.3 和 Rails 3,得用 RVM(Ruby Version Manager)。我整理了一下在 Ubuntu 上安装 Rails 3 RC 版的过程,供大家参考。文章的网址为:

http://xcell.me/posts/3-installing-rails-3-through-rvm

如果内容有什么问题的话,还请不吝赐教。谢谢大家!... 17 篇回复 | 参与讨论 | gnowoel | Add to del.icio.us | Add to reddit | Search in Technorati | Add to Ma.gonolia | Add to BlogMarks | Add to LookSmart FURL | Add to Spurl | Add to simpy | Add to Tailrank

  125%变成1.25?

format("%.2f",125)
=> "125.00"
irb(main):012:0> format("%.2f",125%)
SyntaxError: compile error
(irb):12: syntax error, unexpected ')'
请问,应该如何写?... 6 篇回复 | 参与讨论 | luofeiyu | Add to del.icio.us | Add to reddit | Search in Technorati | Add to Ma.gonolia | Add to BlogMarks | Add to LookSmart FURL | Add to Spurl | Add to simpy | Add to Tailrank

  查ruby api 去哪比较权威正确

最近遇到个问题,就是TCPSocket没有recvfrom method,

用ruby 1.8.7有用jruby 1.5.1就没有,郁闷,折腾了半天,高手指点一下。... 2 篇回复 | 参与讨论 | jinleileiking | Add to del.icio.us | Add to reddit | Search in Technorati | Add to Ma.gonolia | Add to BlogMarks | Add to LookSmart FURL | Add to Spurl | Add to simpy | Add to Tailrank

  如何获得图片的尺寸

得到图片对象后,如何获得该图片的实际尺寸,即图片的高度和宽度。请高手指教!... 13 篇回复 | 参与讨论 | autumn | Add to del.icio.us | Add to reddit | Search in Technorati | Add to Ma.gonolia | Add to BlogMarks | Add to LookSmart FURL | Add to Spurl | Add to simpy | Add to Tailrank

  这个字符串替换为何无法运行?

我的目的:将一个字符串所有不是英文小写的字符删除。

item='gkhj*&()'
item=item.map{|echar|
if /[a-z]/=~ echar then
echar=echar
else
echar=''
end}
puts item
为何上面的代码不能得到我需要的结果呢?... 5 篇回复 | 参与讨论 | luofeiyu | Add to del.icio.us | Add to reddit | Search in Technorati | Add to Ma.gonolia | Add to BlogMarks | Add to LookSmart FURL | Add to Spurl | Add to simpy | Add to Tailrank

  如何挑选出包含列数超过3个的行?

require 'rubygems'
require 'nokogiri'
item='sometext'
doc = Nokogiri::HTML.parse(open(item))
data=doc.xpath('/html/body/table/tr[@td.size>3]')
puts data

上面的代码无法运行,估计xpath表达式的问题,请问,这个xpath表达式如何写?... 8 篇回复 | 参与讨论 | luofeiyu | Add to del.icio.us | Add to reddit | Search in Technorati | Add to Ma.gonolia | Add to BlogMarks | Add to LookSmart FURL | Add to Spurl | Add to simpy | Add to Tailrank

  多线程的错误处理究竟应该如何写?

有一个处理多线程下载的代码片段:
p1

for page_to_fetch in cthreaddown
threads<<Thread.new(page_to_fetch) do |web|
datafile="/home/pt/usa/stock/"+web
open(datafile,'a+'){|refile|
open(web){|webfile|
refile.puts webfile.read
puts "#{web} is over"
}}
end
end
threads.each {|thr|
begin
thr.join
rescue Timeout::Error => e
puts "#{web} failed"
rescue NameError => e
puts "#{web} failed"
rescue => e
puts "#{web} failed"
end
}
程序可以运行,但是运行一段时间以后,下载了几千个数据后,出现错误
undefined local variable or method `web' for Data:Class (NameError)
这里的data类是我的程序定义的。
我仔细查找,发现了原因:web,用wget,发现有的web返回404.
不明白的事情是,为何我的程序不能处理这个错误,会中途停下来?
于是改成p2\p3都不行,请问,如何解决?

p2

for page_to_fetch in cthreaddown
threads<<Thread.new(page_to_fetch) do |web|
datafile="/home/pt/usa/stock/"+web
open(datafile,'a+'){|refile|
begin
open(web){|webfile|
refile.puts webfile.read
puts "#{web} is over"
}}
rescue NameError => e
puts "#{web} failed"
rescue => e
puts "#{web} wrong"
end
end
end
threads.each {|thr| thr.join }

p3

for page_to_fetch in cthreaddown
threads<<Thread.new(page_to_fetch) do |web|
datafile="/home/pt/usa/stock/"+web
open(datafile,'a+'){|refile|
begin
open(web){|webfile|
refile.puts webfile.read
puts "#{web} is over"
}}
rescue NameError => e
puts "#{web} failed"
rescue => e
puts "#{web} wrong"
end
end
end
threads.each {|thr|
begin
thr.join
rescue Timeout::Error => e
puts "#{web} failed"
rescue NameError => e
puts "#{web} failed"
rescue => e
puts "#{web} failed"
end
}
无论p1/p2/p3,故障都一样,可以正常运行下载30%左右的数据,都出现
undefined local variable or method `web' for Data:Class (NameError)
请问,如何写多线程的这个错误处理,让程序跳过错误,可以正常运行?... 5 篇回复 | 参与讨论 | luofeiyu | Add to del.icio.us | Add to reddit | Search in Technorati | Add to Ma.gonolia | Add to BlogMarks | Add to LookSmart FURL | Add to Spurl | Add to simpy | Add to Tailrank

  有什么好结构可以代替if then?

if a=="symbol" then
这个里面有400多行,有各种选择、文件读写等等,有很多end
else
end
如果用if then 来写,个人觉得结构会很糟糕,请问,有什么表达方法,可以让这个程序更容易读?... 3 篇回复 | 参与讨论 | luofeiyu | Add to del.icio.us | Add to reddit | Search in Technorati | Add to Ma.gonolia | Add to BlogMarks | Add to LookSmart FURL | Add to Spurl | Add to simpy | Add to Tailrank
创建新主题 | RSS |  NORMAL Mode
© 2006-2010 A Jesse Cai Production   -   About   -   京ICP备07020911号
a site powered by Project Babel