PyCharm 2.6 のダイアグラム表示機能を試してみた
PyCharm 2 .6のEAP版がダウンロードできるようになりました。
リリースノートはこちら
http://blog.jetbrains.com/pycharm/2012/08/pycharm-2-6-early-access-preview/
ダイアグラムのサポートが面白そうだったのでいろいろ出力させてみました。
多対一のリレーションの場合
http://djangoproject.jp/doc/ja/1.0/topics/db/models.html#id12
from django.db import models class Manufacturer(models.Model): pass class Car(models.Model): manufacturer = models.ForeignKey(Manufacturer)
多対多のリレーションの場合
http://djangoproject.jp/doc/ja/1.0/topics/db/models.html#id14
from django.db import models class Topping(models.Model): pass class Pizza(models.Model): toppings = models.ManyToManyField(Topping)
多対多のリレーションで中間モデルを作成した場合
http://djangoproject.jp/doc/ja/1.0/topics/db/models.html#id16
from django.db import models class Person(models.Model): name = models.CharField(max_length=128) class Group(models.Model): name = models.CharField(max_length=128) members = models.ManyToManyField(Person, through='Membership') class Membership(models.Model): person = models.ForeignKey(Person) group = models.ForeignKey(Group) date_joined = models.DateField() invite_reason = models.CharField(max_length=64)
一対一のリレーションの場合
https://docs.djangoproject.com/en/1.4/topics/db/examples/one_to_one/#one-to-one-relationships
from django.db import models class Place(models.Model): pass class Restaurant(models.Model): place = models.OneToOneField(Place, primary_key=True)
しっかり出力されてます。
試してないですがGoogle App Engineのモデルでも出力できるみたいです。
もっと複雑なモデル構成のプロジェクトの場合は便利かも。