More than 1 year has passed since last update.

Node.jsで実践的なWebアプリ開発をやったメモ

https://github.com/yuiseki/ieiri-crowds

ライブラリのドキュメントとリポジトリ

組み合わせてできること

  • passportとpassport-twitterでTwitter OAuth認証して、mongooseでUserモデルと連動させてトークンなどを保存、取り出し
  • mongooseから特定の条件でUserモデルを取り出してkueでジョブを登録して実行させる
    • 自動ツイートなどをジョブキューで実装

引っかかった点

  • passportのログイン時処理をmongooseのモデル内に書きたい

    • → staticメソッドとして定義してログイン時の引数をそのまま受け取るように実装すれば書ける、動く
  • mongooseのモデルをAPI経由でjsonで出力するときに、表に出したくないフィールドがある

    • → schema.set("toJSON", {transform: function(doc, ret, options){...} }) でjsonにするときの処理を定義できる
  • mongooseでpaginationをやりたい

    • → require "mongoose-pagination"
  • kueを扱うスクリプトでmongoose使う方法

    • require '../models/user'とかやって問題なく動く
    • modelの依存を少なくしておかないと外から呼ぶ時面倒になる可能性はある
    • 終了処理だけmongoose.connection.close()を呼ぶように気を付ける必要がある