最近、mysqlはJSONフィールド を導入しました 。
最新バージョンのmysqlを使用していない場合でも、JSONデータをvarcharフィールドに保存することは可能であり、多くのサードパーティのライブラリ DjangoのJSONサポートを提供します。
サードパーティのライブラリが必要な理由は、DjangoにJSONFieldが組み込まれていないためです。最近Postgresql用に1つ追加されましたが、mysqlはまだ遅れています。
mysqlを含まない代替手段は、redisを使用することです。 Djangoは、redis を優れた方法でサポートしています。 ご存知のように、redisハッシュはPython辞書と非常によく似ています。 ORMサポートには、mysqljsonフィールドと同様にサードパーティのライブラリが必要です。ただし、redisは、セッション間で永続化し、非常に高速にクエリできるPythonディクショナリと考える方が簡単です。最後になりましたが、ハッシュは氷山の一角にすぎません。