如何使用自定義的 iso 建立 Linode
如何使用自定義的 iso 建立 Linode
如何使用自定義的 iso 建立 Linode
ubuntu 如何連接 windows 的分享資料夾
ubuntu 如何使用排程 crontab
mermaid 是使用 JavaScript 開發的圖表工具。 他受到 Markdown 啟發,使用簡易的文字定義,即可動態建立圖表。 本文介紹如何將其嵌入 Jekyll 之中。
免費版的 github 建立 gh-pages 必須公開 repository。 如果想省錢又不想把 markdown 直接公諸於世該怎麼辦?
查詢佔用 port 的 pid $ netstat -nlp|grep 8080 查詢 pid 佔用哪些 port $ netstat -pl | grep 6152
Postal 1. 開一台 Ubuntu 16.04 LTS 2. 執行快速安裝指令 $ curl https://raw.githubusercontent.com/atech/postal/master/script/install/ubuntu1604.sh | sh 3. 開新帳號 $ pos...
錯誤訊息 ActionDispatch::Cookies::CookieOverflow in UsersController#create 解決方式 使用 active_record_store 或是 mem_record_store 把 cookie 內容另外存起來 本文使用 active_record_...
修改 model app/lib/templates/active_record/model/model.rb 官方範例 修改 view app/lib/templates/scaffold/_form.html.erb app/lib/templates/scaffold/edit.html.erb app/...
施作方式 1. 設定 User.current user.rb class User < ApplicationRecord def self.current Thread.current[:user] end def self.current=(user) Thread...
情境 開發專案時常有通用的欄位要新增, 不只 created_at update_at, 還想要加入一些 created_user、updated_user、status、comment 之類的欄位 又不想要每次產生 migration 再重複寫一次 處理方式 - override原有程式碼 新增 schema...
Yaml_db 將 db 資料轉成 yaml 備份、還原 主要的指令如下 rake db:data:dump -> 匯出到 db/data.yml rake db:data:load -> 從 db/data.yml 還原到db 使用方式 情境:將 sqlite 轉到 mys...
Ngrok 透過簡單的方式,將內網 localhost 讓外網可以連進來,順便連 SSL 都處理好了 對於開發 webhook 或是 SSL 的網頁時非常好用 安裝 建議直接把他裝到 global 先至官網註冊一帳號 下載並解壓縮出 ngrok 到你目前的目錄,按照官網說明輸入 to...
什麼是 elementary OS? line 1.裝 chrome extension 版 到 chrome://flags/ 開啟 Desktop pwas 到 chrome://extensions/ 找到你的 Line extension id (以下提到的 ophjlpahpchlmihn...
步驟 依照 cordova 加入並建立 ios $ cordova add platform ios $ cordova build ios 一開始建立一定是顯示失敗收場(沒有sign之類的錯誤訊息) 打開 xcode 加入 apple id 打開 Xcode,...
Gem gem ‘rack-cors’, ‘~>1.0.2’, require: ‘rack/cors’ gem ‘grape-swagger-rails’, ‘~> 0.3.0’ gem ‘swagger-docs’, ‘~> 0.2.9’ CSRF 相關 只允許某個 controller...
預安裝 須先安裝 ImageMagick 或是 GraphicsMagick command-line tool (這邊以 ImageMagick 為例) Linux $ sudo apt-get install imagemagick Mac $ brew install imagemagick ...
1. 產生ssl證書 先將 ssl 證書 產生到指定的地方( 此例為 ~/.ssh ) 備用 $ openssl req -x509 -sha256 -nodes -newkey rsa:2048 -days 365 -keyout ~/.ssh/localhost.key -out ~/.ssh/local...
Install Dante Server $ sudo apt-get update $ sudo apt-get upgrade $ sudo apt-get install dante-server Configuration $ vim /etc/danted.conf logoutput: /v...
狀況一 由 "product"產生 Product 去new一個instance 使用 constantize 把 string 轉換成 model product_model = 'product'.camelize.constantize new_product = product_model....
Git 環境設定 $ git config --global user.name [YOUR_NAME] $ git config --global user.email [YOUR@EMAIL.COM] $ git config --global color.ui true #=>打開 Git 的 co...
Install $ sudo apt-get install ufw Check Status $ sudo ufw status verbose # Status: inactive # Status: active / with the rules Normal Flow 1 . allow a...
不同路徑 假設你已經建立好兩個model想指定他的路徑 devise_for :students, path: 's' devise_for :teachers, path: 't' 會顯示如下 http://localhost:3000/s/sign_up http://localhost:3000/t/si...
設計模式 Rails API 原生預設的模式,使用原本的route控制 若是新系統,推薦使用 Grape API ...
create dropets 3 GB Memory / 20 GB Disk / SGP1 - Ubuntu 16.04.3 x64 hostname: mail.yourdomain.com with your ssh key login with root by ssh key $ ssh...
本文使用 Ubuntu 16.04 LTS 前言 提高server的回應速度和防止應用程序記憶體不足錯誤的最簡單方法之一,是加入一些swap。 在本文中,我們將介紹如何在Ubuntu 16.04中新增swap 請確認使用root登入,或使用sudo操作 警告 若server使用SSD硬碟,使用sw...
有時候你需要你的設備(比如一個SMTP服務器)擁有一個特定的出站公共IP,用於諸如反向DNS查詢之類的事情,以確保郵件的傳遞和信譽,或者你希望來自特定設備或策略的信息流出IP跟踪的手段。 在Fortigates中,如何做到這一點並不明顯,通常情況下,當你創建一個策略並通過它進行NAT通信時,Fortigate將...
使用方式 直接使用ActiveRecord執行SQL指令 values = users.map { |u| "(#{mass_email.id},#{u.id})" }.join(",") ActiveRecord::Base.connection.execute("INSERT INTO mass_emai...
前言 Cocoon可以方便快速建立動態Nested Form,避免手動寫一堆jQuery, 適合懶人、新手、不想用前端框架之人。 使用方式 # [path] gemfile gem "cocoon" // [path] application.js //= require cocoon 基本用法 假...
[Rails] 10分鐘內使用HTML模板產生PDF 原文出處 How to Generate PDFs with HTML templates in 10 minutes with Rails 前言 為您的Web程式產生PDF並非你想像中的那麼困難。 有很多方法可以做到這一點,還有另一個好用ge...
參考網站 http://www.printmanager.com/cms.php?aid=82&fullpage=1&support=8 兩種方式 透過LPD指令列印 透過smb分享印表機列印 安裝CUPS 方便新增/刪除印表機,有webUI可以操作 https://www.cu...
知識 Vue - 前端框架 Nuxt - Vue通用應用框架(快速架構網站) Element - Vue的元件框架(快速layout) 安裝 nodejs 網站 npm 網站 vue-cli 網站 nuxt 網站 ...
修改同步頻率 regedit 找到 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\TimeProviders\NtpClient 找到 SpecialPollInterval 從 604800(7天) 改為 86400(1天) ...
字串 分隔字串擷取(類似split) SELECT PARSENAME(REPLACE('Hello John Smith', ' ', '.'), 2) -- => Hello SELECT PARSENAME(REPLACE('Hello John Smith', ' ', '.'), 0) -...
首先 加入這行 # [path] route.rb require 'sidekiq/web' Sidekiq::Web.set 'views', File.join(Rails.root, 'app', 'views', 'sidekiq') 然後去sidekiq github把web/views裡面所有文...
取得 Queue Sidekiq::Queue.all # 所有的Queue Sidekiq::Queue.new # "default" Queue Sidekiq::Queue.new("mailer") # "mailer" Queue 查詢xx Queue裡面的Job Sidekiq::Queue...
方法 有以下兩種方式 黑蘋果 - 類似原生硬體配合要求較高 VM - 基本上都沒問題,但速度較慢 1. 黑蘋果 安裝方式 2. VM 建議裝10.11 有加速的程式,執行後可以接近原生速度 只下載就好其它不用看 載點位置 可以裝VM player就好 安裝方式 載入ISO解...
範例 # 站點分類 class Market < ActiveRecord::Base acts_as_nested_set counter_cache: :children_count end # 商品 class Product < ApplicationRecord has_many ...
Receive as array: def some_func(*args) puts args.count end some_func("x", nil) # 2 Send and receive as hash: def some_func(**args) puts args.count ...
前言 本教學整理自laracasts中的Learn Vue 2: Step By Step,如有興趣或是有任何問題也可以自行參考影片教學。 載入Vue.js 首先,我們必須載入Vue.js才能使用,請直接至Vue.js官網,找到install CDN的頁面,至我們的網頁中加入 <script s...
域名商 匿名 可搜尋域名 可註冊/登入 使用者 可購買域名 顯示已購買域名 可自訂DNS 可自動續約 待辦事項 匿名 介紹頁面 可註冊/登入 可建立暫時專案 可建立暫時待辦事項 使用者 可建立專案 可建立待辦事項 團體訂便當 匿名 使用方式 ...
方法一:直接使用–amend調整 #先修改需要修改的地方。 $ git add . $ git commit –amend #會跳出vim畫面,調整好後輸入:wq離開即可 方法二: 先reset,再調整 $ git reset HEAD^ #重新修改 $ git add . $ git commit -m ...
介紹 本文為 GoRails 的 Using VueJS for Nested Forms with Rails 練習 有興趣可以參考影片及git Video Part1 Video Part2 Git 準備工作 更新到 Rails 5.1 先安裝好npm 安裝新專案 $ rails new g...
原本使用 <% if user.photo.present? %> # 總是ture <%= image_tag(user.photo.url) %> <% end %> 改使用exists判斷 <% if user.photo.exists? %> ...
基本使用方式 <%= sanitize @comment.body %> 自定義允許的tags及attributes <%= sanitize @comment.body, tags: %w(strong em a), attributes: %w(href) %> 全域自定義允許...
前言 本次需求,在facebook登入後,仍希望轉至使用者編輯頁面,讓使用者補填電話及密碼等資訊,否則該帳號不予以啟動。 override after_sign_in_path_for class ApplicationController < ActionController::Base prot...
顯示Timezone 從資料庫取出來後才轉換為該時區的時間 config.time_zone = 'Taipei' DB Timezone model的Timezone,也就是資料庫裡面的datetime存法 Rails預設是使用UTC,但是對於常常在直接使用資料庫查詢資料的人實在是很痛苦, 可以改為以loc...
不錯的方式 $(this).addClass('active').siblings().removeClass('active'); 參考 http://stackoverflow.com/questions/12687085/jquery-remove-class-if-other-e...
介紹 參考Railscasts的capstrano系列文章,讓我們使用完整的Server管理及監控方案,所有項目都可以快速建立完成,並自動後續監控及重啟Service的動作,讓我們可以安心地喝杯咖啡,不用手忙腳亂。 Capstrano Tasks 基本的Capstrano介紹使用 Railscasts PR...
不錯的做法 start_date = 1.week.ago.to_date end_date = Date.today months = (start_date..end_date).select{|date| date.day==1}.map{|date| [date.beginning_of_month, ...
問題 用sidekiq跑排程,在Redis使用了一段時間後,突然出現以下問題,導致所有排程都暫停 MISCONF Redis is configured to save RDB snapshots, but is currently not able to persist on disk. Command...
廣播 筆記 sleepy 參考 https://www.allearsenglish.com/aee-729-enter-conversation-english-guns-blazing/
訣竅 不懂裝懂 - 雖然不懂,但是要讓人以為你很懂 被動找解 - 當有人覺得你很猛,問你的時候,再去找解答,並回答他 繼續炫耀 - 當你被動地找到解答後,想必你也懂了,可以更大肆地宣傳 持續不懈 - 當你的不懂與解答日月累積後,就變實力和成就感 .# 分享你才剛弄懂的東西 .# 分享你還不...
加入 class Hash def +(hash) temp = Hash.new self.each do |key, | temp[key] = self[key] + hash[key] unless hash[key].nil? end ...
問題 最近facebook都無法登入,原本以為是我不小心動到什麼, 後來才發現我所有的project都不能登入了。 出現的錯誤訊息如下 Authentication failure! invalid_credentials: OAuth2::Error, : {"error":{"message":"This...
前言 當兩個project共用一個redis時,會發現sidekiq work有時候會被吃掉。 處理方式1 - 直接指定切不同db 這時候簡單的處理方式就是加上”/X”數字去區分不同的project 只要到 config/initializers/sidekiq.rb 加入以下行數即可 在project...
前言 之前一直找不到好用的Redis Client端介面,最近剛好找到這個還不錯,web介面想開再開起來,紀錄一下。 Github https://github.com/joeferner/redis-commander 安裝方式 $ npm install -g redis-commander 使...
版本 Ruby 2.3.1 / Rails 5.0.1 說明 本次實作動態下拉選單。 步驟 1. 建立model $ rails g model country name $ rails g model state name country:belongs_to $ rails g scaffold pe...
安裝 Ubuntu on Windows ***注意: 微軟已調整安裝方式,目前請由 windwos store 搜尋 ubuntu 安裝 首先你要到設定中,「更新與安全性」裡頭的「開發人員專用」下面,打開「開發人員模式。」 再到「控制台」中的「程式和功能」,點選「開啟或關閉Windows...
建立logs指令 deploy.rb namespace :logs do desc "tail rails logs" task :rails do on roles(:app) do execute "tail -f #{shared_path}/log/#{fetch(:rai...
github https://github.com/ydkn/capistrano-rails-console 設定 1. gemfile group :development do gem 'capistrano', '~> 3.6.0', require: false ge...
錯誤訊息 開啟的時候發現port被佔用 $ rails s => Booting Puma => Rails 5.1.0.rc1 application starting in development on http://localhost:3000 => Run `rails server ...
正常更新 git add . #加入所有變動項目 git commit -m '<some commit>' #建立異動版本 git push orginal master # 推到預設的master分支 合併分支 branch> git merge master # 把master合併到b...
Deploy cap production deploy deploy上去 cap deploy:rollback 還原到上次點 cap deploy:rollback:[xxxxx] 還原到某個點
windows mariaDB 忘記root密碼修改 先停止 mariaDB (mysqld)服務 進入cmd,到你的mariaDB/bin目錄中,輸入以下指令(啟動不需權限的服務) mysqld.exe -u root --skip-grant-tables 另開cmd,同...
方法一 加入onerror <img onerror="this.src='noImg.gif'" src="test.jpg" /> 方法二 用object <object data="test.jpg" type="image/jpg"> <img sr...
介紹 自從Win8.1之後,因為投入Rails之列,就幾乎很少使用windows了。 以致到現在弄了台新電腦,才有機會嘗鮮。 聽說Win10不只把APP整合到視窗程式中,就連開發環境都想整合,硬是把Linux環境給搬上來,而且是相當於原生環境(類似Linux的wine),而不像vargant或docker是虛擬...
整合 Devise 實作 Facebook 登入機制 前言 本次製作的登入機制,是保留原始的登入及註冊方式,並可另外使用facebook做登入。 首次使用facebook登入時,不需要輸入密碼,直到後台有設定密碼之後,始可使用帳號密碼登入。 首次使用帳號密碼登入時,可於後台再設定綁定facebook帳號。 ...
##使用vmhgfs-fuse指令mount到資料夾 例如: $ mkdir ~/vmshare $ vmhgfs-fuse ~/vmshare 這樣所有分享資料夾都會在~/vmshare之下了 參考 https://superuser.com/questions/1072317/vm...
參考範例 change_column :articles, :body, :text, :limit => 4294967295 rails 預設是TEXT(65535) 1 to 255 bytes: TINYTEXT 256 to 65535 bytes: TEXT 65536 to 16777...
可以直接寫在 initializers 裡面 # [path] string.rb class String def is_number? true if Float(self) rescue false end end Reference http://stackove...
安裝local端的gem 安裝 只要輸入 gem install 你的專案名.gem 即可,他會連相依的gem一起安裝 $ gem intall YOUR_GEM_NAME.gem # Fetching: gyoku-1.3.1.gem (100%) # Successfully installed DEPE...
一般變數指定 a = 10 b = a b += 10 #=> a = 10 #=> b = 20 hash複製 #失敗範例 a = { name: 'ivan', age: 18 } b = a b[:age] = 30 #=> a = { name: 'ivan', age: 30...
先登入mysql命令列 $ mysql -u root -p #=> 輸入密碼 mysql> SHOW VARIABLES LIKE ‘character%’; +--------------------------+----------------------------+ | Variabl...
require "net/http" def remote_file_exists?(url) url = URI.parse(url) Net::HTTP.start(url.host, url.port) do |http| puts http.head(url.reque...
前言 SQL Server 資料庫使用久了,交易記錄檔 LDF 會越來越大,該如何處理 我們可以透過 DBCC SHRINKFILE 壓縮目前資料庫之指定資料或記錄檔的大小 建議 建議復原模式使用簡單即可,因此使用方法一就好 方法一、把還原模式變成簡單模式,log壓縮成1mb USE YOUR_DB; DB...
前言 Fortigate 60D 忘記密碼處理方式有二 重置密碼 用console連接電腦的com port,再用terminal連 - 用usb連接電腦,再用fortiExplorer連 Reset全部(當然是下下策啦,但平常備份有做好做滿的話,也還O...
前言 指令將使用 sleep 300 當範例 指令背景處理 指令最後輸入&就是放到背景處理的意思, $ sleep 300 & [1] 26469 $ sleep 300 & [2] 26496 查看目前已經建立的指令 jobs $ jobs [1] - running s...
首先,我們先宣告module Foo當範例 module Foo def foo puts 'Hello!' end end 接下來看看Include Foo及Extend Foo的差異 Include include提供實例方法(instance method)。 例如: class Ba...
非常棒的gem audited https://github.com/collectiveidea/audited 安裝方式 gem "audited", "~> 4.3" rails 5.0 要加上 gem "rails-observers", github: 'rails/rails-obs...
##推薦 keylord 解決因快照功能失敗 導致排程無法繼續問題 MISCONF Redis is configured to save RDB snapshots, but is currently not able to persist on disk. Commands that may modif...
設定DKIM及SPF ##DKIM #####1: 產生DKIM的網站: http://dkimcore.org/tools/keys.html #####2: 貼在dns txt紀錄中 例如: 1479549806.xxx._domainkey.mail.xxx.com.tw. IN ...
錯誤訊息 xxx> gem install rest-client Building native extensions. This could take a while... ERROR: Error installing rest-client: ERROR: Failed to build ...
前言 Active Job 是rails官方內建的背景執行程序,有adapter可用來連接外部的Sidekiq、resque、delay job等 我個人認為語法滿簡潔的,而且如果以後想改resque或其他也滿好處理 這邊使用sidekiq來執行,並搭配Sidekiq-cron這個plugin來設定排程 並且會安...
Cron 指令 crontab -e 編輯排程 (edit cron) crontab -r 移除排程 (remove cron) crontab -l 顯示目前排程 (list cron) crontab -u 改變排程的執行身分: crontab -u user filename Cron 語法 ...
database.yml 取得方式 config = Rails.configuration.database_configuration host = config[Rails.env]["host"] database = config[Rails.env]["database"] userna...
前言 最近網頁寫膩了,萌生想寫應用程式的念頭, 原本想開xcode swift3開幹,但是公司的人又都是windows寫完不能分享很不爽 後來想說用C#,不過自己平常很少開window也很不爽。 以前曾經寫過QT不過還是換換口味吧,找找ruby, 讓我找的一個看起來算滿意的VisualRuby,畢竟有UI介面可...
前言 前陣子遇到需要匯出CSV問題,想想很簡單嘛,ruby內建的CSV應該手抖一下就寫完了。 後來發現事情不像我想得這麼簡單,照理說只要照預設輸出成UTF-8就萬事OK, 但是在window開起來卻是亂碼,在開頭加了BOM後原以為事情完美落幕, 偏偏廠商就是不吃UTF-8格式,研究半天,轉成Big5還是有問題,後...
利用關鍵字查詢Query的紀錄 因為舊系統不是我寫的,又想知道前人的查詢條件,只好使用這個方式來查 請把YOUR_KEYWORDS置換成你想查詢的關鍵字 SELECT top 100 t.text FROM sys.dm_exec_cached_plans AS p CROSS APPLY sys.dm_ex...
#加入function def remote_file_exists?(url) url = URI.parse(url) Net::HTTP.start(url.host, url.port) do |http| return http.head(url.request_uri)....
方式一 str = “your +example string@ here” # Between 1st + and 1st @: str[/\+(.*?)@/,1] # Between 1st + and last @: str[/\+(.*)@/,1] # Between last + and las...
前言 昨天更新了homebrew後,今天就發現rails console無法使用了 錯誤碼如下: Library not loaded: /usr/local/opt/readline/lib/libreadline.6.dylib (LoadError) 解決方式 爬了幾篇文,發現應該是因為homebre...
1. 資料庫轉Hash 2. Hash篩選 slice 12 except 5 select 5
本文使用 Mac OS X EI Capitan 10.11.6 前言 好久沒有寫PHP了,最近發現laravel竟然內建Vuejs,因此手癢想來看看laravel搭配Vue的架構是怎麼設計的。 安裝項目 首先,講一下安裝的順序 因為不想干擾到我目前系統的環境,我這邊選擇使用Homestead來安裝。...
本文使用 Ruby 2.3.1 / Rails 4.2.0 前言 本文將介紹如何在Rails中動態的配置head中的Title、Description及keywords。 設定方式 ###1) 安裝 gem seo_helper gem ‘seo_helper’, ‘~> 1.0’ ###2...
本文使用 Ruby 2.3.1 / Rails 5.0.0 前言 通常我們會使用預設放在public裡面的404及500頁面來建立,但其風格跟自己網頁差太多,不好跟自己現有載入的css同步 因此本文將介紹該如何拉出來自己定義,並可以直接套layout的風格。 本文重點: 建立errors專用的co...
##取得DB Schema方式 本想找個軟體來匯出,沒想到有人已經寫好現成的SQL,把Demo替換成自己的DB即可 USE Demo; SELECT a.Table_schema +'.'+a.Table_name as 表格名稱 ,b.COLUMN_NAME ...
統一使用simple_form 原本使用很混亂,有時候在post表單中會用simple_form,而在搜尋的欄位卻用form_tag,後來發現其實simple_form也可以不用對應controller直接送網址,例如: <%= simple_form_for "" ,url: whatever_path...
先轉為簡易模式,縮小後,再改回完整模式 USE YOUR_DB; GO -- Truncate the log by changing the database recovery model to SIMPLE. ALTER DATABASE YOUR_DB SET RECOVERY SIMPLE; GO --...
前言 目前有些需求想要直接查看gem原始的寫法自己來override,因此常常需要快速打開gem 安裝gem-path $ gem install gem-path 使用方式 $ gem path [GEM_NAME] #例如: $ gem path devise #=> /USERS/YOUR...
本文使用 Mac OS X EI Capitan 10.11.6 or Ubuntu 16.04 / MSSQL 2008 R2 前言 因為有遠端存取MSSQL資料的需求,這邊紀錄一下連線相關工具、問題等。 本文重點如下: 連線工具:FreeTDS介紹 相關gem: - acti...
Ubuntu 16.04 / Ruby 2.3.1 / Rails 5.0.0 Create a Linode plan: Ubuntu 16.04 LTS Disk 256MB Swap Image login user: root 123456 ssh to...
前言 會有這樣的主題,是因為在寫Rails專案時,通常都是link_to到底,很少用到button_to,因為link_to加上btn的class就長得跟button一模一樣了。 但最近常常遇到一些光怪陸離的事情,例如: 在link_to下了method: :post卻一直用 get送 明明下了m...
本文使用 Ruby 2.3.1 / Rails 5.0.0 前言 今天來探討一下find及where的差異,這邊建立了一個Model Todo 來做測試 實際測試 單筆比較 Todo.find(1) #=> SQL: SELECT "todos".* FROM "todos" WHERE...
本文使用 Ubuntu 14.04 LTS / Ruby 2.3.0 / Rails 5.0.0 接續上篇 DigitalOcean - 使用 Capistrano Deploy Rails App (一) 前言 續前篇建立Droplet及環境安裝,本文將講解專案如何透過Capistrano...
本文使用 Mac OS X EI Capitan 10.11.6 / Homebrew 0.9.9 前言 此為MySQL於MAC環境的安裝筆記,本文將使用homebrew安裝MySQL,並大致紀錄如何手動/自動開啟服務 使用homebrew安裝 brew install mysql 安裝...
本文使用 Ubuntu 14.04 LTS / Ruby 2.3.0 / Rails 5.0.0 前言 本文將使用 Capistrano Deploy Rails App 至 DigitalOcean VPS上。使用的資料庫及伺服器如下: MySQL Nginx Puma 本...
本文使用 Mac OS X EI Capitan 10.11.6 / Ruby 2.3.1 / Rails 5.0.0 前言 本文有以下幾個重點: 安裝相關套件 Vagrant在本機使用 Vagrant發佈至Linode 其他方便工具介紹 安裝相關套件 第一步請先安裝Virt...
本文使用 Ruby 2.3.1 / Rails 5.0.0 建立 Username rails generate migration add_username_to_users username:string:uniq rails db:migrate 設定 Strong parameters ...
本文使用 Ruby 2.3.1 / Rails 5.0.0 前言 本專案簡易建立月份行事曆,並有以下功能: 有bootstrap-datapicker可以選擇 有月份清單可瀏覽 相關gem gem 'bootstrap-generators', '~> 3.3.4' gem '...
參考 https://github.com/bjjb/ebayr
參考 https://github.com/hakanensari/peddler
本文使用 Ruby 2.3.1 / Rails 5.0.0 前言 此專案簡易介紹google map座標及網頁顯示的產生。主要功能如下: 可以只打地址(address欄位),存檔時會自動產生經緯度 清單上的地址,分別以marker列在地圖上 點選marker可以顯示地址 相關gem...
前言 目前 Ubuntu 最新版本已經於 2016 年 04 月發表,來到了 16.04 版,而且是 LTS 版本,身為 Ubuntu 愛用者,一定要來嘗(ㄘㄞˇ)鮮(ㄌㄟˊ)一下啦!!! 1.中文輸入法問題 似乎從ibus換到fcitx,總之安裝時雖然選了中文,但一開始卻沒注音(新酷音chewing)可以...
推薦第5種(Rails-Assets.org),很方便 1. 直接下載source 從該網頁直接下載code,並把他放置到/vendor/assets/目錄中,手動將他include進app/assets中。 這是一種最簡單直覺的方式,假設來源檔只有單檔,可以簡易的include,那麼使用這個方法其實...
ElastichSearch 在 rails 中使用分析 GEM ElastichSearch-rails 原理 ElastichSearch-rails的原理,是先把你指定的model中的資料轉成json格式,再做全文檢索(基本上就是純文字比對,所以速度比關聯式資料庫快很多),待找到資料後,再回傳這些資...
方式1 # [path] route.rb devise_for :users, :skip => [:registrations] #拿掉registrations不只會拿掉註冊,還會拿掉編輯,所以下面要再手動加回來 as :user do get 'users/edit' =>...
有三種方式 在 DeviseController 定義layout 在 ApplicationController 定義layout 在 config (config/application.rb) 定義layout (推薦此種) 第一種 需要自己寫一個User::Registrations...
## [path] Date db:‘%Y-%m-%d’ 2008-08-20 long_ordinal:‘&proc’ August 20th, 2008 long:‘%B %e, %Y’ August 20, 2008 rfc822:‘%e %b %Y’ 20 Aug 2008 n...
MODEL scope :with_year_and_month, ->(year, month) { date = DateTime.new(year,month) where(created_at: date...date.next_month) } # => created_at &...
MODEL # app/models/market.rb class Market < ActiveRecord::Base has_many :pictures, dependent: :destroy end # app/models/picture.rb class Picture < ...
可以在model內寫 class Post def next self.class.where("id > ?", id).first end def prev self.class.where("id < ?", id).last end end contr...
使用方式 var ready; ready = function() { //裡面放jQuery觸發動作 $("#foo").on("click", function(event) { console.log("link clicked"); }); }; $(document).rea...
1. 首先先建立一個vue101的專案 rails new vue101 -T 2. 加入vue套件 (這步驟可以改用現成的gem vuejs-rails) 把vue.js、vue-resource.js放進/vendor/assets/javascript/中 (vue-resource...
參考 https://www.digitalocean.com/community/tutorials/how-to-set-up-nginx-server-blocks-virtual-hosts-on-ubuntu-14-04-lts https://blog.toright.com/posts/4...
參考 https://blog.gtwang.org/linux/linux-git-server-using-ssh/ https://ihower.tw/rails4/deployment.html
安全機制 另建一個新帳號放入sudo群組,將root關閉 使用ssh key登入,並取消密碼登入 不使用預設的ssh port 金鑰解釋 金鑰 = 公鑰 + 私鑰 每次執行$ ssh-keygen時,會產生一組金鑰(公鑰+私鑰) 公鑰: ~/.ssh/id_rsa.pub 私鑰: ~/.ss...
範例 今天有devise生成的User,如果建立user後想要自動再建立對應的payment,該怎麼施作。 shell rails g devise:controllers users config/routes.rb devise_for :users, controllers: { registr...
舉例 頁面瀏覽計次,這邊以文章(post)舉例 例如在post中加入view_count當計次的欄位 rails g migration add_view_count_to_posts view_count:integer rake db:migrate 第一種方法、簡易寫法 可以使用increment...
方便的Gem
使用方式 隨機產生8碼小寫a-z0-9 [*('a'..'z'),*('0'..'9')].shuffle[0,8].join 參考 http://stackoverflow.com/questions/88311/how-best-to-generate-a-random-string-in-r...
步驟 只要把 .coffee 檔改為 .js 即可 可以在 application.rb 中加入下列文字,則可在generate的時候預設產生js檔 config.generators.javascript_engine :js 參考 http://stackoverflow.com/...
參考 http://www.cmoney.tw/notes/note-detail.aspx?nid=7762 https://tw.answers.yahoo.com/question/index?qid=20100129000010KK02595
Gravatar 介紹 gravatar是「Globally Recognized Avatar」的縮寫,中文翻譯就是全球認證的大頭貼,這個網站致力於提供大頭貼對應的服務。 當你在註冊一些使用此服務的網站的時候,例如GitHub、Slack、Quip等,你會發現你還沒上傳頭像,但你的頭像在註冊完成後,就自動出...
前言 其實是因為我的Terminal有使用Oh My Zsh,有一天他問我是否要更新,但卻怎麼也更新不了 error: Cannot pull with rebase: You have unstaged changes. 發生原因 應該是自己有調整過一些套件或是設定值,導致 git 有衝突 解決方式 ...
前置 須先安裝好以下幾個gem gem 'bootstrap-sass' gem 'font-awesome-rails' gem 'simple_form' ##安裝方式 加入pagedown-bootstrap-rails至gemfile gem 'pagedown-bootstrap-r...
前言 此方式需要用到turbolinks 補充: 如只需要上方progress bar,可直接使用 gem “nprogress-rails” 也很方便 選好喜歡的Loading圖 http://tobiasahlin.com/spinkit/ 這邊使用其中一項當範例 加入CSS,請確保applica...
前言 此方式需使用 turbolinks 的方法 新增效果 css 這邊使用animate.css動畫效果, 下載 animate.css 放至 assets/stylesheet,確保他有被application.scss載入 加入轉頁 javascript 新增一檔案,放至 assets/javas...
使用方式 def index @products = Product.all @products = @products.where("name LIKE ?", "%#{params[:product_name]}%") if params[:product_name].present? @pr...
前言 最近製作專案時,常發生按下刪除鈕,彈出好幾個確認視窗 “Are you sure?”,要按很多次才會真的刪除。 查了網頁原始碼,也沒發現重複載入的 javascript,在百思不得其解之下,只好一直亂 google,終於在 stackoverflow 討論串找到解決方式。 發生原因 此問題原來是在做 ...
前言 最近可能需要串接其他系統,但該系統又沒有現成的 api,需要直接進行多個資料庫撈取與回寫時使用 方式 在 database.yml 加入其他 db 的設定 default: &default adapter: postgresql encoding: u...
前言 由於 bootstrap 的套版常常都是使用 css,改成 scss 會比較好做調整,因此想到是否有工具能夠快速轉換。 確認的結果官方及有兩個指令可以互相轉換,且也有線上網站提供轉換。 指令轉換 (以下範例xxx為input,yyy為output) SASS/SCSS 轉 CSS sass xxx...
前言 關聯的 model 發生 nil 錯誤狀況處理方式。 因為實作時常發生此狀況,特此紀錄 狀況 有兩個Model為1對多的關聯,如Event及Category class Event < ActiveRecord::Base belongs_to :category end class ...
說明 此範例主要建立簡易的分類與下拉選單,例如:商店有分中式、日式、韓式等類型可選擇,將建立兩table進行類別對商店的1對多關連。 建立方式 1. 先建立 Model Category 及 category_id 欄位 rails g model Category name:string content...
前言 最近發現常常使用 conuter cache,紀錄一下增加記憶。 使用時機 當有兩個 table 為 1對多關聯,並需要統計關聯 table 的數量時。此時每次存取網頁都需要再統計一次數量,會造成效能低落。 若使用Counter Cache,則可讓每次關聯 table 數量異動時,由程式自動紀錄至主要...
前言 剛好看到有人在詢問此問題,就打了一大篇,非本科系大概不知道, 應該每個語言都有 « 和 » 這個兩個 operator 吧。 可以拿 mac 的計算機來按, command+3 切到程式語言模式 ( command+1 切回來) 觀察二進位的變化。( 如下面範例的點法,就是5 + << 和 ...
加入方式 1. 加入 js // [path] app/assets/javascripts/application.js $(document).ready(function() { $('.has-tooltip').tooltip(); }); 此段意思是在 document (整個網頁) re...
Github will_paginate 這是原版的,轉為 html code 時會用 div 包,需要另外自行套樣式 will_paginate-bootstrap 如果用 bootstrap 樣式,直接使用這個即可 使用方式 controller 中 原本寫法: @posts = Post.all...
建立方式 加入 helper # [path] app/helpers/application_helper.rb module ApplicationHelper def notice_message alert_types = { notice: :success, alert: :dange...
基本用法 例如:app/view/comments/_comment.html.erb 其他 template 要引用此 partial: <%= render :partial => "comments/comment" %> 簡略寫法: <%= render "commen...
網站 https://github.com/plataformatec/simple_form 安裝 gem 'simple_form' bundle install rails generate simple_form:install --bootstrap 基本使用方式 只要輸入 f.in...
網站 http://placehold.co/ 在施作網頁畫面的時候,常需要放圖片,直接使用此方式即可: <img class="img-responsive" src="http://placehold.co/900x300" alt=""> 格式調整 長寬只填一項,就是正方形 ...
gemfile gem 'awesome_rails_console' gem 'devise' gem 'bootstrap-sass' gem 'simple_form' #gem 'bootstrap_form' #gem "font-awesome-rails" #gem 'will_paginate...
推薦 gem acts_as_votable 使用方式 加入acts_as_votable # [path] gemfile gem 'acts_as_votable', '~> 0.10.0' bundle install (記...
使用方式 <% @groups.to_enum.each.with_index(1) do |group, index| %> <tr> <td><%= index %></td> </tr> <% end %>...
專案概述 網頁連結看板,提供使用者瀏覽,並提供有登入的使用者建立/修改/刪除,有喜歡和不喜歡的功能,並可於該連結留言。 步驟 Step1. 起步走 建立新專案 rails new AReddit 初始化git git init git add . g...
strong parameter 是什麼? strong parameter是一個rails的安全機制,他是為了解決「大量賦值(Mass assignment)」因為太方便而造成的安全性議題。 為什麼我們要用 strong parameter? 簡單講就是限制可寫入的欄位,才能有效避免被Hack猜中其...
namspace 是什麼? 一種特定scope應用,能夠創造出一組獨立的controller、path、url Helper等。 例如: namespace :admin do resources :products end 可創造path: http://localhost:300...
User Story 是什麼? 敏捷專案常用技巧,其重點不在撰寫規格,而是改由用戶故事帶出專案架構。 為什麼我們要用 User Story? 透過不同角色,不同場景去模擬專案執行時的狀況,才能真實的呈現,甚至能抓出原本少思考到的問題。 透過簡單的功能敘述,才能使團隊成員皆能清楚了解項目實際運作方式...
前言 今天在使用驗證的時候覺得綁手綁腳,還是整理一些 Validation 常見使用方式來用好了。暫時先這些,之後使用到會再補充.. 驗證觸發點 只有在以下method執行時,才會觸發驗證: create create! save save! update update! 驗...
基本能力 Google - 請點滿此技能 English - 現在至少會Google找翻譯的程度(我發現很多人錯誤訊息明明寫得很清楚,ex.template missing,但還是會直接丟Slack問,可以預想絕對無法進步) 沒碰過 unix-like 環境 terminal - 至少知道...
先講結論 其實語言學久了就會知道,你在乎的不是語言,而是這個生態圈。 這堂課有很多助教可以問、課後有slack可以加入、有Office Hour、meetup可以參加,其實這張票就是通往這個生態圈的門票。 你問我值不值得,我絕對推薦你來參加,因為課程不僅是表面上的4週,還是永久的學習圈。 前提是你能夠好好利用...
前言 最近學習Rails,有感用滑鼠或觸控板仍是不夠快速,切換一直很卡, 可能也是之前習慣用notepad++的關係,改用atom後很多快捷鍵還是不太習慣, 社群中剛好有人在使用vim,讓我想起還有一個曾經想學習卻一直卡關的Editor,剛好趁此機會直接跳槽吧。 簡介 Vim是一套很古老知名免費且開源的編輯器,...
先安裝 homebrew http://brew.sh 使用 brew 安裝 MacVim brew update brew install vim 系統已經內建不需再安裝,因此我沒執行此行(避免有人系統沒內建,這邊還是加入此行) brew install macvim brew ...
前言 練習 Rails101 時,經常有此疑惑,為何新增時用 new,但在實際建立又用 create, 而後又看到 build 的用法,所以為此應該進一步研究一下。 說明 首先這邊需要將 new, build, create, save 先區分為兩類: 類方法: new, bulid, create...
選定想要的模板 先到startbootstrap.com去找免費模板 http://startbootstrap.com/ 找到後下載下來解壓縮,會看到很多資料夾,請直接點開index.html 確認需要調整的地方 點開後會看到你要的套版畫面,請於畫面空白處點右鍵選擇“檢視網頁原始碼” ...
查詢 git status # 查詢狀態 git log # 查看log git branch # 查看目前branch 本地 git init # 初始化 git add . # 新增所有 git commit -m "[content]" # commit目前內容 git checkout [...
《 一、軟體規劃 》 Computational Thinking 電腦解決問題的思維 把大問題拆解成可以時作的小問題 實作過程中找資源 User Story 實作方式 以人出發,先寫出所有角色主要項目 針對每個角色進行功能的擴寫 最後堆砌成待辦清單 《 二、網站實作(基...
Atom snippets https://gist.github.com/sdlong/e2188e26ad1a0231ae29 輸入簡碼,按下tab <!-- lt --> <% link_to("", path) %> <!-- ltd --> <%= l...
[ Chapter 1. 環境安裝 ] 1-1 確認ruby版本 ruby -v 1-2 安裝 gem rails 4.2.0 gem install rails -v 4.2.0 --no-ri 1-3 建立一個新 Rails 專案 ( 版本 4.2.0 ) rails _4.2.0_ new ...
Route # [path] config/routes.rb root 'topics#index' #root page , go to controllor"topic" and method"welcome" get 'welcome', to: 'topics#welcome' # /welco...
1. check the version ruby -v rails -v 2. create a project gem install rails -v 4.2.0 --no-ri # "--no-ri" means do not install documentations rails _4....
1. Create a Test Project rails new test_project 2. Turn into the Project cd test_project 3. Init a Git git init git add . git commit -m 'init' 4. Q...
Studies Intro to Rails Rails 101 Rails 102 Rails實戰聖經 Articles Land Dream Rails Job xdite Blog Courses Rails 即戰力 meetups Rails...