Upgrade mongoid from v5.4.0 to v6.4.2

Upgrading mongoid v5.4.0 -> v6.4.2 refs: https://docs.mongodb.com/mongoid/6.4/tutorials/mongoid-upgrade/#upgrade-to-6-x-series 6.0.0.beta https://github.com/mongodb/mongoid/releases/tag/v6.0.0.beta MONGOID-3944 Support #create_with method. 🆕#create_with メソッドの追加 ActiveRecord の #create_with の mongoid…

MongoDB データモデルデザイン

MongoDB 公式ドキュメントから抜粋Env / VersionsMongoDB v3.6Embedded Data Models (埋め込みモデル)Example:{ _id: <ObjectId1>, username: "123xyz", contact: { phone: "123-456-7890", email: "xyz@example.com" }, access: { level: 5, group: "dev" } } 非正規化モデルより少ないクエリとアップデートで済む次のような時に使用する・エンティティ間に「包含」関係がある。1対1の関係・エンティティ間に1対多の関係がある。子ドキュメントは常に親ドキュメントのコンテキストで表現される  🙆‍♀️ Strengths・単一のデータベースから関連するデータを取得するのと同じように、参照操作のパフォーマンスを向上させうる・1回のアトミックな更新操作で関連するデータを更新することができる  🤦‍♀️ Weaknesses・関連データをドキュメントに埋め込むと、作成後にドキュメントサイズが大きくなる・MMAPv1ストレージエンジンを使用すると、ドキュメントの増大が書き込みのパフォーマンスに影響を与え、データの断片化を招く可能性がある・📝 ドキュメントのサイズは最大で 16 megabytes  Normalized Data Models…

MongoDB : Replica Set の参照設定

📝MongoDB のドキュメントを箇条書きしていく。随時更新 Env / Versions MongoDB v3.6 参照の優先度設定 ⚠️ Primary から Secondary への非同期レプリケーションには遅延が発生するため、古いデータが返される可能性がある 参照のモード 各 MongoDB ドライバーは以下の5つのモードをサポートしている primary Primary からのみ参照する Primary が使用できない場合はエラーになる デフォルト primaryPreferred Primary から参照するが使用できない場合は Secondary から参照する secondary Secondary からのみ参照する 使用可能な Secondary が無い場合はエラーになる secondaryPreferred Secondary から参照するが使用可能な Secondary が1台もない場合は Primary から参照する nearest ネットワークレイテンシが最も低いメンバーから参照する Primary, Secondary 問わない サーバ選択アルゴリズム…

[SOLVED] Failed to auto renew ssl certificate for ghost blog

ghost cli v1.0.0 -> 1.3.0 Ref -> Upgrading Ghost-CLI $ npm upgrade ghost-cli -g $ ghost version Ghost-CLI version: 1.3.0 Ghost Version (at /var/www/ghost): 1.6.2 $ ghost migrate ✔ Checking for available migrations Running sudo command: mkdir -p /etc/letsencrypt Running sudo…

Sign in to Errbit with GitHub

Introduction I wrote about the introduction of Erribit in past postings. How to install Errbit for Express bug tracking 🐛 This post is about how to configure Errbit to sign in with Github. ENV Mac OSX 10.12.3 MongoDB 3.4.2 Node.js 7.5.0 Express 4.14.…

Node.js Database Cleaner with Mongoose

Env Mac OSX 10.12.3 MongoDB 3.4.2 Node.js 7.5.0 Mocha 3.2.0 database-cleaner 1.2.0 Install database-cleaner 🚿 $ yarn add -D database-cleaner or $ npm install -D database-cleaner test/mocha.opts --reporter spec --recursive --require test/setup test/setup.js const mongoose = require('mongoose')…

au -> LINEモバイル 乗り換え

au から LINEモバイル に乗り換え。 LINEモバイル まだ始まったばかりなので周りに使っている人もいなかったので、ダメだったら乗り換えればいいやぐらいの気持ちで選択。 Twitter, Facebook の通信料が無料になったらどのぐらいになるかなっと。普段LINEはほとんど使わない。 ということで LINEフリープラン ではなく コミュニケーションフリープラン を選択。 3GB, データ+SMS +音声電話 で Â¥1,693 / 月 安い。 申し込み 夜にLINEモバイル公式ページから申し込みをし、次の日には本人確認も完了してSIMが発送されました。 早い。 本人確認書類(免許証など)は携帯で写真を撮ってそのままアップロードした方が楽なので携帯で申し込みがオススメ。 MNP 今回は au から MNP で乗り換えしたので、切り替え作業の申し込みをし、30分後にはLINEモバイルのSIMが使えるようになりました。 申し込みは電話で。本人確認の質問に幾つか答えるだけなのですぐ終わる。まだ始まったばかりだからか、電話は繋がりにくかった。 おわり 音声電話をつけたのは仕事のためですね。普段使うことはほとんどない。 ちょうどauが2年経って更新月だったところにLINEモバイルが始まったので、重い腰を上げて乗り換えをしました。 料金もそうですが、…

Mongoid エラーメッセージが翻訳されない時

Env Rails 4.2.7 Mongoid 5.1.1 Mongoid のエラーメッセージを正常に出力する 英語以外のロケールで Mongoid を使用していると、 Mongoid のエラーが発生した際にそのエラーメッセージが翻訳できずに translation missing エラーが発生してしまいます。 Mongoid::Errors::DocumentNotFound: translation missing: ja.mongoid.errors.messages.message_title: translation missing: ja.mongoid.errors.messages.document_not_found.message translation missing: ja.mongoid.errors.messages.summary_title: translation missing:…