iT邦幫忙

第 12 屆 iThome 鐵人賽

DAY 3
0
自我挑戰組

學習筆記系列 第 6

Ruby on Rails ,LINE Bot 學習筆記

  • 分享至 

  • xImage
  •  

記錄學習內容。
主要是看網路上的文章和影片,做些紀錄。
內容可能有錯誤。

學習來源
只要有心,人人都可以做卡米狗 系列
為你自己學 Ruby on Rails

筆記:

1
如果是在windows開發,要注意Heroku 的作業系統是Debian,就是linux作業系統 。
所以有些套件雖然在windows 不能直接裝 。 但是在Heroku就可以直接裝。
像是rmagick:
https://zh.wikipedia.org/wiki/ImageMagick

不過github上有寫windows也可以裝,但應該不是一行 gem 'rmagick',就可以解決的:
https://github.com/rmagick/rmagick/

2
要怎麼看上線的資料庫內容 ?
linebot可能記了很多東西到資料庫,想來看一下資料庫的資料長怎樣。
Heroku 預設幫你創的資料庫管理系統是PostgreSQL 。

方法是 ,載了一個視覺化PostgreSQL的軟體: pgAdmin 4
https://www.pgadmin.org/download/pgadmin-4-windows/
然後遠端 連到 Heroku 的 資料庫 。

要怎麼知道Heroku 的 資料庫 的帳密 ?
直接登入Heroku 網頁。
點選專案的Resources :
https://ithelp.ithome.com.tw/upload/images/20200903/20111994WFNtmsmSzU.png

點進去就可以看到這些資料了:
https://ithelp.ithome.com.tw/upload/images/20200903/20111994sL3VZKQKeR.png

然後這邊就可以看到帳密了:
https://ithelp.ithome.com.tw/upload/images/20200903/20111994uFH7BP1Vit.png

3
用這個,來達成,每幾個小時,發送一次客製化的訊息:
背景工作及工作排程 :
https://railsbook.tw/chapters/21-background-job.html

delayed_job 套件:
https://github.com/collectiveidea/delayed_job

不了解delayed_job 的原理 。 只知道它其實就是一個table 。
然後 有一個欄位 叫做 run_at,表示到了那個時間 , 會執行ruby程式 ,然後那一列的資料就會消失。
在資料表就長這樣:
https://ithelp.ithome.com.tw/upload/images/20200903/201119948CXVFfUfqn.png

然後還可以自行運用 ,增加欄位,這邊就新增了一個欄位,叫做channel_id 。
就可以知道這個job是誰的 。
https://ithelp.ithome.com.tw/upload/images/20200903/20111994yg4CIX3gRZ.png

4
Nokogiri -- >解析HTML/XML
https://nokogiri.org/
https://ithelp.ithome.com.tw/articles/10036858
https://en.wikipedia.org/wiki/Nokogiri_(software)
拿來當爬蟲。 像是這樣:

html = open("https://www.google.com/").read
doc = Nokogiri::HTML(html)
result=doc.search('pre')[0]

上一篇
Java Producer Consumer pattern
下一篇
及時編譯(JIT)
系列文
學習筆記46
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言