テーブル定義からDjangoモデルを出力する

概要

ここでは、データベース管理機能にて作成したテーブル定義からDjangoモデルを出力する方法を説明します。

説明

テーブル定義の情報からDjangoモデルを出力するには、「データベース管理」>「データベース詳細」のメニュー内の「テーブル定義出力」をクリックします。

手順1

テーブル定義出力」をクリックすると、出力対象のテーブルを選択するダイアログが表示されます。

手順2

Djangoモデルとして出力したいテーブルを出力テーブルにて選択します。
選択したテーブルのモデルを出力」ボタンをクリックすると、画面の右ペインに選択したテーブルのDjangoモデルが出力されます。
また、出力された内容は「コピーする」ボタンをクリックするとPCのクリップボードにコピーされます。

出力フォーマット」は現状「Djangoモデル」のみです。
カラムの物理名が「id」の場合、このカラムは出力されません。物理名が「id」のカラムを表示する」にチェックを入れると出力されるようになります。

詳細

Djangoモデルへの変換

  • テーブル定義は以下の変換表に従って出力されます(一部例外有り)

    • max_lengthCharFieldTextField のみ出力されます。

    • Foreign Keyを指定している場合、設定されている物理型より ForeignKey フィールドが優先されます。

    • カラムの default に入力した内容は、数値型のフィールドではない場合、ダブルクォーテーションで囲まれて出力されます。

  • テーブル定義から ManyToManyFieldOneToOneField への変換は対応してません。

変換表

テーブル定義の設定

モデル出力

テーブル物理名

Djangoモデルクラス名、Metaクラスのdb_テーブル

テーブル論理名

Docstring、Metaクラスのverbose_name

テーブル説明

DjangoモデルクラスのDocstring

カラム物理名

Djangoモデルフィールドの変数名

カラム物理型

Djangoモデルフィールド

カラム論理名

verbose_name(フィールドオプション)

PrimaryKeyにチェック

is_primary=True(フィールドオプション)

UNIQUEにチェック

unique=True(フィールドオプション)

Indexにチェック

db_index=True(フィールドオプション)

default

default=入力値(フィールドオプション)

size

max_length=入力値(フィールドオプション)

カラム説明

コメントアウトして出力

Foreign Key

ForeignKeyフィールド