-->

2020/05/07

執行 inspectdb 把已經存在 DB 的 schema 拉回來

今天的情況是 Laravel 已經做好 migration,但是後來決定使用 Python 來處理一些 PHP 處理起來比較麻煩的東西,但資料庫必須共用、無法分開。




Django 有的功能叫做「inspectdb」,當 settings.py 的資料庫都設定好以後,在執行「./manage.py inspectdb」,就會自動生成 models。

所以懶一點的作法是「./manage inspectdb > app/models.py」。

2020/04/21

Laravel v7.0 新功能

官方網站整理下來:


Airlock

使用 Airlock 可以更輕鬆的支援 single page application (SPA)、token-based API 等等,同時也可以針對 token 設定可存取犯元 (scope)。 (感覺上類似 OAuth)


Custom Eloquent Casts

以往使用者從 Eloquent ORM 拉出資料以後,使用者可以自訂 cast type,也就是說可用者可以自動 cast attribute 成特定格式。範例可以參考 Laravel 的 Pull Request



Blade

新增不少功能來 render HTML。詳細說明請參考 Larvel Docs。



HTTP Client

為了史 API 更靈活,Laravel 使用 Guzzle HTTP client 來與其他 API 溝通。



Routing Cache

透過新的方式來做 route 的 cache,即使大型網站 (800 routes) ,route matching 的速度也可以比以往快上 20 倍。

2020/04/08

用 venv 為 Python 建立虛擬環境

大家都知道把套件裝成 global 會發生什麼事吧?所以若要開發的 project 需要很複雜套件相依性,則可以考慮使用 Python 的 virtualenv。

先來安裝 pip3:
sudo aptitude install python3-pip

在用 pip3 來裝 virtualenv:
pip3 install virtualenv

會後在準備建立的專案執行以下指令:
python3 -m venv project

這個時後你會發現 project 目錄底下已經有不少東西了,這個時候就可以切入虛擬環境中:
$ source bin/activate
(project) $ 

奇蹟出現了,你的 prompt 最前面已經加上專案名稱,代表你已經完全在專案的環境底下,這環境下不管你用 pip 專什麼東西都不會影響到外部其他專案。

當開發結束,要離開個環境的時候,記得下指令「deactivate」以便離開虛擬環境。

Python 筆記

沒有特別提示的話,Python 的直譯器指的都是 CPython,另外還有 PyPy、IronPy、Jython 等。

另外 CPython 的 garbage collection 是 by reference counting 的,必要時可以用下面方式 GC:
del variable

2020/03/22

好歌找好久 - 直接備份

tag: ericsk


想要女朋友
詞/曲:ericsk

linchieh:
話先說在前頭, 這首歌只是我的白爛之作,
沒有要影射任何人的意思唷~~大家聽聽笑笑就算了...^^|||


又是走過竹軒門口 看著他們卿卿我我
尷尬的我快步走過 心裡想著什麼時候會輪到我

聽到正妹被人把走 勝利的人是個豬頭
搖搖頭說自己沒種 害羞得連追女生的勇氣都沒有

想想平時做些什麼 讀書作業考試樣樣都多
哪來機會時間交朋友 只有無奈地看著別人手牽手

我也想要一個女朋友 陪我唸書跟我到處走走
宿舍門前十八相送 靠著我的肩膀說妳永遠愛我
我也想要一個女朋友 只怪作業考試實在太多
才讓美女選了豬頭 而不是認真的我

孤獨時候唱男人與公狗 她被追走之後聽著開不了口
怎麼寂寞難耐的人會這麼多 難道一切都是野狗惹的禍?
交大的好男孩真的很多 只是節儉愛穿Hangtang Giordano
女生們呀妳們要好好地把握 但是請別忘了也不差的我

喔~我好想要一個女朋友 有個人陪真的不錯
親吻擁抱牽手 這樣的甜蜜我要何時才有?
喔~我好想要一個女朋友 可是妳們怎麼都不看我?
只好照照鏡子 看看自己是不是真那麼醜
喔~我只想要一個女朋友 睡前有人祝我好夢
認真唸書還會提醒我記得要運動
喔~我只想要一個女朋友 最後還是只能隨口說說
愛情的箭何時才會射中我 喔喔~