プロダクト開発日誌

技術のことなど

nodebrew を利用してnode.jsをinstallする

nodebrewは、node.jsを自分のマシン内でversion管理するためのtool。rubyのrbenvのようなもの。

github.com

ソースを持ってくる

$ curl -L git.io/nodebrew | perl - setup

パスを追加.bashrc .zshrc などに

# nodebrew
export PATH=$HOME/.nodebrew/current/bin:$PATH

環境変数の読み込み

$ source ~/.zshrc

install可能なnode.jsのバーションの一覧

$ nodebrew ls-remote

nodebrewでnode.jsのinstall

$ nodebrew install v8.11.3

使用するバージョンを指定

$ nodebrew use v8.11.3
$ rehash

バージョン確認

$ node -v
v8.11.3

Rubyスキルチェック問題を行うときに役に立ったメソッドなど

入力

n
input_lines = gets.to_i
m n
n, m = gets.split.map(&:to_i)
N1
N2
N3
・
・
・
N7
(7).times{ gets.to_i }

出力

N文字目まで出力

s = "abcdef"
puts s[0,2]
=> "ab"

メソッド

絶対値(Absolute value)

p number.abs

文字列の末尾の改行文字を削除

p string.chomp

切り上げ

10.5.ceil
=> 11

切り下げ

10.5.floor
=> 10

四捨五入

10.5.round
=> 11

一文字ごとに分割

p "hello".chars
=> ["h", "e", "l", "l", "o"]

置換

string.gsub!(/at/, '@')

配列の要素数

array.count('x')

文字列の反転

s.reverse

計算

べき乗

p 2 ** 2
=> 4

バリューからキーを取得

hash.key(5)

最大と最小

array.max
array.min

三項演算子

puts a % 2 == 0 ? "even" : "odd"

ハッシュのループ

string = gets.chop
hash.each{ |key,value| string.gsub!(key, value) }

文字列から数字を取得(数字以外を消す)

s = gets.chop
puts s.delete("^0-9")

【Rails5】Herokuに乗っけたらフェイスブック認証ができなくなった件

f:id:synapse51:20180829151144p:plain

エラー

 URLはブロックされています: リダイレクトURIがアプリのクライアントOAuth設定でホワイトリストに追加されていないため、リダイレクトできませんでした。クライアントとウェブOAuthログインをオンにして、すべてのアプリドメインを有効なOAuthリダイレクトURIとして追加してください。

エラーの内容

リダイレクトURIがアプリのクライアントOAuth設定でホワイトリストに追加されていない。

対処法

コールバックURIをホワイトリストに追加する。

コールバックURIを確認する

http://localhost:3000/rails/info/routes

OAuth設定でホワイトリストに追加する

https://developers.facebook.com/apps

f:id:synapse51:20180829155346p:plain