- Apr 25 Wed 2012 10:35
Try lightbox from outsite
- Apr 02 Mon 2012 12:30
[影音分享] Jazz味很重的超時空之鑰組曲
自然想到了一首很喜歡但你水管又找不到的好音樂
(雖然其實現在找得到了,但就硬要用Nico版的分享+試用XD)
整首曲子是以「風の憧憬」為底的Jazz arrange,個人非常喜歡:D
其實niconico的影片除了會員才能看之外,就只剩網頁內嵌可以用,
所以很多在你水管找不到的歌就很難分享。v。
以後看能不能多在blog上發點分享文,而不是有如火星文般的技術文XD
(重點是也不夠Geek,失敗中的失敗XDDDDDDD)
- Feb 28 Tue 2012 16:34
在Ubuntu 11.10 64-bit底下更新Chrome flash pulgin
- Jun 03 Fri 2011 16:58
Ruby on Rails學習筆記 - 依照solr的比對分數作排序
(前略,因為不知道要寫什麼引言XD)
這陣子一個很苦惱我的問題,
就是在solr傳出來的結果是依照關聯性(score)排序,但下了query後,卻變成用primary key排序。
因為Ruby語法還不熟,加上不知道用什麼關鍵字去Google,整個卡關卡超大,
總之,是備忘用筆記。
原則上,最初的一步是在solr的fl參數,將score加上去,像是 :fl => "score, id"這樣,
才會把比對的分數一併傳出來
問題來了,在query時要用solr的id去作,同時用score的分數作排序
後來才知道應該要傳hash進去,以下則是邏輯上的思考
(由於id是primary key,因為不會重複,所以作為hash的key)
(而不同的id可能會有相同的score,所以score作為hash的value,拿score當key會天下大亂XD)
# res is the result of solr
key_array = res.map { |k| k['id'] }
value_array = res.map { |v| v['score'] }
id_and_score_array = [key_array, value_array].transpose
id_and_score_hash = Hash[*id_and_score_array.flatten]
這樣target_hash就是我要的hash了
最後是query時要用到sort來根據score作排序,但拉資料要用id來拉
post_find = Post.find(key_array)
post_score_array = [post_find, value_array].transpose
post_score_array.sort! { |a,b| b[1] <=> a[1] } # sort by value
@post = Hash[*post_score_array.flatten].keys
這樣@post就是依照solr的score去排序了,但以上顯然是很不漂亮的寫法XD
所以改成以下寫法,就可以得到排序後的結果了
id_score_hash = Hash[*res.map { |h| [h['id'], h['score']] }.flatten]
@post = Post.find(id_score_hash.keys).sort {|a, b| id_score_hash["#{b.id}"] <=> id_score_hash["#{a.id}"]}
- May 17 Tue 2011 12:48
Ruby on Rails學習筆記
前略(誤)
總之開始在新環境後,接著就是學習Ruby on Rails
排版不是很好看,還請見諒
學習流程如下:
- Getting Started with Rails
中文化
(1.5 手刻Getting Started with Rails) - XDite的2010 Ruby on Rails 書單 與 練習作業
還有ihower的作業: 簡易論壇系統
相當建議新手照著Getting Started with Rails先全作一遍
用Scaffolding去作也沒關係,先熟悉一次流程,大致了解一下整體運作
(若本來就有相關經驗的話可以跳過Scaffolding這段,直接手刻)
參考資料如下:
- Ruby on Rails 實戰聖經
- Rails API Documentation
- Try Ruby!
- Google大神XDDD (這其實用最多)
那麼開始筆記,分享一些整體遇到的重點、問題與解決方案
事前準備,好的機器與好朋友(無誤),前者方便你使用,後者亦同(喂喂)
好的版本控制跟上手的編輯器,可以幫助不少,建議是git作版本控制,因為很多資源可以撈阿XD
看一下網站上的前兩章了解一下基本概念
=以下都在ubuntu 10.04底下,使用Ruby 1.8.7與Rails 3.0.7完成,沒用RVM=
用中括號的數字,表示是Getting Started with Rails內的章節,像是[7.3]就是該網頁上的7.3的部份


