TECH EXPERT 44日目

TECH::EXPERT

今日はチーム開発初日。
順調に思えたものの、自動デプロイ時にunicornの起動に失敗。手動で起こそうとしてもargument error.関連してそうな箇所をしらみつぶしに当たったけれども解決方法不明。ちょっと今日は途中休憩です。

Rails

credentials.yml.enc

rails5.2からsecrets.ymlの代わりに導入された。
credentials.yml.encはgitに共有されるが、master.keyは.gitignoreに最初から追加されている。
master.keyがあれば以下のコマンドでdecodeして編集できる。

EDITOR=vim bin/rails credentials:edit

git等で環境を引っ張ってきた場合には、上記のコマンド時にmaster.keyが新規に作成されてしまう。これはcredentials.yml.encが作成された時のキーとは違うため、credentialsをデコードできない。

CarrieWave

ローカルファイルをアップロード File.open()

class Test < ApplicationRecord
  def self.image
    pic = Picture.new
    pic.image = File.open("cat1.png")
    pic.save
  end
end

python

.join()

stringに対してjoin(array)と指定する。
stringを間に挟んで結合される。rubyとは逆なので気持ち悪い。

hoge = "|".join(arr)

index付きのfor文

forで回せるオブジェクトをenumerateすると、forの値を2種類持てる。
1つ目が要素の番号で、2つ目が要素の値になる。

for i,r in enumerate(root):
iがindex、rがrootのvalue

mySQL

drop database

mysql -u rootでSQLにアクセスして、以下のコマンドでデータベースの消去。
データベース名に「-」をそのまま用いるとsyntax errorになる。
回避するには`データベース名`とバックチックで囲う。

drop database `model-app_development`

コメント