node.jsでKyokoさんに源氏物語を朗読してもらう
Macに住んでるKyokoさんとOtoyaくん(とその他海外の方々)。
雑なスクレイピングとsayコマンド呼び出しでKyokoさんに青空文庫の源氏物語を朗読してもらった。
$ npm install cheerio-httpcli
$ node kiritsubo.js
node.jsでKyokoさんに源氏物語1章を朗読してもらう
ルビ注釈は全部replaceで消したので所々読みを間違えてるけど、そこはご愛嬌。
ちゃんと読ませるには辞書を作成しないといけないし面倒くさい。
REPLでハリボテAPIクライアント作った
jsonwebtokenとかpassport-jwtとか使ってJWTの発行API作ったので実際に取得するためのコンソールクライアントを書いた。
Postmanでやれって話だけど、他のAPIのテストとかも最終的には自動でしたいので。
で、1点ハマったこと。
_ ←コイツ
underscoreの後継lodash。
コイツをコンソールでも普通に使いたくて、
global._ = Sequelize.Utils._;
ってやったら、最初の1行はちゃんと使えるけど2回目以降の文ではなぜかundefinedとか別の値になってる。
これはREPLの仕様で、_ はひとつ前の文の実行結果を入れるために予約された変数らしい。
どうしようもないのでlodashとか__ (アンスコ2つ)とかに入れておけば良さそう。
ディレクトリ内のモジュールをパスカルケースでエクスポートする。
ディレクトリ内のモジュールをパスカルケースでエクスポートする。
という要求があったので、書いた。
ファイル名は - (ハイフン)区切りを想定。アンダースコアの場合はsplitの引数を変えれば対応できるが、lowerCamelケースの場合は少々複雑になる。クラスを記述するファイル名はハイフン区切りかスネークケースかそのままエクスポートできるようにパスカルケースにするのが良さそう。
Sequelize-cliでモデルを作成する
sequelize-cliのインストール
$ npm i sequelize-cli -D
モデル定義
ソーシャル系のサービスで必要になりそうなモデル定義を作ってみた。
インデックスなどは貼ってくれなさそうなので、いったんファイルを作ってから手動で貼る。