ORMをリバースエンジニアリング
-
27-09-2019 - |
質問
指定されたスキーマと【のMySQL]データベースを考えると、それのためのORMインターフェースを生成することができますか?そのPHP、PythonやPerlの場合は関係ありません。
は、他の言葉で、私はデータベースを持っていると私はそれをいくつかの質問を聞いています。私はSQLクエリの束(大丈夫、数十)を作成する可能性がありながら、これは考えるように方法がより興味深いものです。
これはでも、有効な質問ですか?私のORMとは、デザインの背景を持っていないが、私はいくつかの(Djangoの、symfonyの、など)を使用しました。
解決
DjangoのORMはあなたのためにこれを行います(あるいは少なくともそれはあなたのために開始したプロセスを取得します)。
ただ、その後、これを行う、あなたは通常(DB接続設定を含む)と同じようにDjangoのアプリを設定します
$ python manage.py inspectdb > models.py
私は私が私は維持を任務としていることレガシー(PHP)ウェブサイトのデータベースの感覚を作るために一度これをしませんでした。それは少し仕事だったが、最終的に私はそれを管理するために、Djangoのadminサイトを使用することができました(プロジェクトが棚上げされたが、それはまた別の話です)。
を参照してください: http://docs.djangoproject.com/en/ DEV / HOWTO /レガシー・データベース/ の
他のヒント
私は必ず正確にあなたが求めているものではないんだけど、私は答えが疑われる
「確かに、既存のデータベースでORMツールを指し、やや役立ついくつかのクラスを取り戻すことができます」Doctrineはこれを行うことができます(ソートの)PHP ORMツールとして頭に浮かぶ。スキーマは、物事のための合理的な名前を持っている場合、それはあなたのための関係を発見するのが最善です尽くします、など。
わからない、それは努力の実際に価値がある、しかし、あなたがしている好奇心、なぜそれにスピンを与えていない場合はどうなりますか?