issue about install SCIM on OLPC

好朋友有台 OLPC 刚升级了 image,装不上中文输入法。今天下午我也一起看了一下,发现是 package dependencies 的问题。

SCIM 需要一个 libgnomecanvas 的包,它依赖与另外一个 libglade2,系统上装的是一个 2.6.2-5 的版本,升级无效,直接下载了一个 rpm,用 rpm 装不上,但是 yum localinstall 显示安装成功,我就真的以为成功了。

然后继续安装 SCIM,问题依旧,显示 libglade2 还是老版本。下载 libglade2 然后重装,问题依旧。

后来发现一个可能是线索的提示,说 libglade2 安装成功,但是缺少 public key,查了一下可能是下的那个 rpm 的 publisher 不能被 OLPC 验证。

问题最终还没解决,有遇到类似情况的朋友请指教。

1条评论

acts_as_taggable_on_steroids 与 will_paginate 的整合

使用 acts_as_taggable_on_steroids 之后经常找有某个 tag 的 item:

@items = Item.find_tagged_with(”tag”)

找到很多需要分页显示,于是顺利成章的在后面加上:

@items = Item.find_tagged_with(”tag”).paginate :page => paramsp[:page] || 1, :per_page => 20

发现无效!原因是 find_tagged_with 返回的是 Array,will_paginate 强大的分页功能瞬时歇菜。

于是乎整合一下两者:

module ActiveRecord
module Acts #:nodoc:
module Taggable #:nodoc:
module SingletonMethods

def count_tagged_with(*args)
options = find_options_for_find_tagged_with(*args)
options.blank? ? 0 : count(”#{table_name}.id”, options.merge(:select => nil, :distinct => true))
end

def _paginate_tagged_with(tags, options = {})
page, per_page = wp_parse_options!(options)
offset = (page.to_i - 1) * per_page
count = count_tagged_with(tags, options)
options.merge!(:offset => offset, :limit => per_page.to_i)
items = find_tagged_with(tags, options)
returning WillPaginate::Collection.new(page, per_page, count) do |p|
p.replace items
end
end

end
end
end
end

之后调用

@items = Item.paginate_tagged_with tag, :page => paramsp[:page] || 1, :per_page => 20

发表评论