2014年9月28日 星期日

Laravel 如何接住沒有連上 Redis 的 Error

如果沒有連上 Redis 理當的確會顯示 error message,我還為了測出這個 Error 刻意把 Redis 停掉,不過這是必要的,因為網站放到 Server 之後,也是必須考慮會有 Redis 未開的情況。

這是 Error Message,當在 database 有設定連線 Redis 時,因為連不上 6379 Port:



我的解法其實也沒什麼特別的,雖然有用 try,但是並不打算把 catch 到的 expection 接起來,畢竟把 error 丟給 user 看,沒什麼太大的意義,撈不到 redis 資料就看不到畫面,也不是很合理 :P 那就讓撈不到 Redis 時,直接從 Database Query 出資料吧 :)

我的寫法並不高深,也不會很炫,但至少不會給 User 難看的錯誤訊息畫面...


try {
    // 先嘗試 Redis 連線,連到的話測試使否拿的到要的 Key
   $app = app();
   $redis = $app['redis']->connection();
   $your_data = json_decode($redis->get('YOUR_KEY'));
   //echo '從 Redis 取得';
   
   if ($your_data == "") {
      // 如果 Redis 要不到資料,那就先跟資料庫拿,拿完之後打入 Redis
      //echo '跟資料庫要';
      $data_from_db = Model::orderBy('createdAt','desc')->get();
      $redis->set('YOUR_KEY', json_encode($data_from_db));
      $your_data = json_decode($redis->get('YOUR_KEY'));
   }else{
      $your_data = Model::orderBy('createdAt','desc')->get();
   }
} catch(Exception $e) {
   // 連不到 Redis 那就直接跟資料庫拿
   //echo '跟資料庫要';
   $your_data = Model::orderBy('createdAt','desc')->get();
}


2014年9月27日 星期六

Laravel4 使用 Redis 出現 Call to undefined method Redis::connection() 錯誤

以下次錯誤訊息:


Symfony \ Component \ Debug \ Exception \ FatalErrorException
Call to undefined method Redis::connection()



本來的連線方式是:
$redis = Redis::connection();

後來改用:
$app = app();
$redis = $app['redis']->connection();

參考:
stackoverflow Laravel 4 : Call to undefined method Redis::connection()

2014年9月11日 星期四

解決 Fatal: Unable to create '.... /.git/index.lock': File exists. 錯誤

git commit 時一直出現 index.lock 的狀況,導致檔案無法加入 commit 的項目:

解法就是砍掉 .lock

rm -f ./.git/index.lock

就可以 commit,不知道有無更好的解法 :)

Lazy Line Painter (具有做 SVG 描線動畫的 JS 產生功能)


前陣子找到的工具,因為在研究如何做出描線的動畫,而且畫質要好,第一個想到的就是 SVG,但是我對 SVG animation 也不熟,後來就找到這個工具了。

首先呢,他不能畫塊狀的東西,你要畫的,要是『線』。

Then? 準備好你的 SVG 檔案,拖到網站下方的這個框框,就會幫你產出 JS。
至於有些基本的 Config,你可以再額外調整,像是線條寬度/ 線條的顏色等等。

是不是很 Easy 呀~ 喜歡嗎? 喜歡就還是要多利用時間了解 SVG animation 比較實用哦,工具畢竟是工具,了解背後的原理似乎比較 high :)


老實說我也不常用,但是常常就會遇到想要用的時候忘記哪時候見過他 XD

臺北的生活


每天晚上,如果無聊,就是打電腦⋯  
下班後的扣打是電腦的充電量用到 20% 就可以洗洗睡、發呆,
好處是學什麼速度都加快,缺點就是容易被別人覺得宅
(因此才會常常往咖啡店走 xd)
不過⋯這也不是很重要的事xd
台北對我而言,就是工作的地方,
這裡沒有親情,
亦不是家鄉,
哎⋯有時候難免還是會想家,
甚至懷念大學刻木頭的日子⋯(那種當學生的感覺真的很好,一切都單純)
但是就是沒辦法,這很現實。
除非我有經濟上的自由,否則很難為所欲為,就算有經濟上的自由,也很難為所欲為。

一轉眼來台北也兩年了⋯ 我得到了什麼,也留下了什麼,當然也失去了什麼,習慣就好,開心生活很重要~。我常在心中告訴自己,過去的美好是很好的回憶,但不能一直活在過去,現在當下的自己,也會是以後的過去,回憶是很兩極的事情,不好的回憶,想起來會是心裡的疤,丟臉的, 難過的, 羞愧的都有,所以之後就會避免留下疤痕,You know :)


發這篇不是因為中樂透還是發票,也不是明天有颱風,只是突然想打字,
一如往常,
明天照常上班 :D




Vue multiselect set autofocus and tinymce set autofocus

要在畫面一進來 focus multiselect 的方式: 參考: https://jsfiddle.net/shentao/mnphdt2g/ 主要就是在 multiselect 的 tag 加上 ref (例如: my_multiselect), 另外在 mounted...