Django1.5からdjango.contrib.authのユーザーモデル(User)を差し替えることが可能になっているが、この機能を実現しているのがMetaサブクラスのswappableオプション。 このオプションを使うと、settingsの設定でモデルクラスを差し替える機能をアプリケーションで提供できる。 差し替えを行うと、差し替え前のモデルはsyncdbの対象からも外れる。 試したバージョンはDjango1.6、Python3.3。 注意点 swappableオプションはプライベートAPIなので、今後Djangoのバージョンアップで予告なく変更、削除される可能性がある。 ドキュメントにはこの機能について意図的に書いてないみたい。 #19103 (Docs for swappable model option) – Django アプリケーションコードでこの機能を使うことは推奨しない