MySQLデータベースのテーブルに組み込まれDjangoの

Djangoの操作MySQLデータベース:

 

設定で1.1、データベースパラメータを設定するので、変更する必要はありません、ここで我々は見て:

データベース= {

「デフォルト」:{
ここで#は、使用するデータベースの種類を指定することができ、例えばMySQLの

'ENGINE': 'django.db.backends.mysql'

'NAME': 'djangomysql'

'USER': 'ルート'、

'パスワード':'******'、

'HOST': 'localhost' の、

'PORT': '3306'

'オプション':{ 'ISOLATION_LEVEL':なし}

}

}

1.2自己定義Pythonクラスの特定の形態を定義するmodels.py Djangoのモデルをコンパイルし、物理メモリの各モデル
の方法では、Pythonクラスこと、各モデルは、データベース内のテーブルを表し、各インスタンスは、クラスを表しますデータベースの
データの行が、各変数は、データベース内のフィールドのクラスを表します。
Djangoのモデルでは、Pythonのコードとデータベース操作は、SQLクエリ言語のカプセル化を達成するために組み合わせます。それは
あなたがデータベースを管理することができないと言われ、SQL言語は、あなたはまた、Pythonのコードデータベースが運営することはできない
ため。DjangoはORMを介してデータベースを操作し、直接次のコードを参照してください。


インポートdjango.dbモデル
。#ここにあなたのモデルを作成壁紙
:クラスのUserInfo(models.Model)
「」「
二つのフィールドを作成するには、最大長は32で、char型
」「」
ユーザー= models.CharField(MAX_LENGTH = 32)
PWD = models.CharField(max_lengthを= 32)
ここで、我々は2つのフィールドは、ユーザー名とパスワードを保存して作成します。
上記のコードは次のネイティブSQL文に対応しています。
TABLEのUserInfo CREATE(
"ID"シリアルPRIMARY KEY NOT NULL、
"ユーザ" VARCHAR(30)NOT NULL、
"PWD" VARCHAR(30)NOT NULL
)。


注意:
Djangoは自動的にデフォルトの自動インクリメントの主キーIDを作成し、もちろん、あなたはまた、主キーを自分で指定することができます。PostgreSQLの複数のフィールドに基づいて、上記のSQL構文とパラメータは
各フィールドのいくつかのユニークなパラメータを持っている、例えば、CharFieldですがVARCHARデータベースフィールドのサイズを指定するにはMAX_LENGTHパラメータを必要としています。すべてのフィールドに適用されるいくつかの一般的なパラメータがあります。これらのパラメータは、文書で詳細に定義されている、我々はここで学ぶ
:最も人気のあるについて学ぶ
<1> CharFieldですが
、学校からデータベース層に.CharFieldは、パラメータMAXLENGTHの存在を必要とする短い文字列の文字列フィールド、とDjango 。フィールドの後部層が許可される最大文字数を制限する
<2> IntegerFieldと
。整数を保持する
<3>はFloatField
2つのパラメータを提供しなければならないフロート:
パラメータ記述
(符号と小数点を除く)の総ビット数をmax_digits
decimal_placesを小数
例えば、999(2セーブで10進数)の最大値を保存するために、あなたはこのフィールドを定義する必要があります。
models.FloatField(...、max_digits = 5、decimal_places = 2)
百万の最大値を保存します、あなたはこれを定義したい(小数点以下10を保存):
models.FloatFieldを(...、max_digits = 19、decimal_places = 10)
テキストボックスとADMIN(の<input type = "text"は >) を示している保全の分野データ。
<4> のAutoField
レコードを追加するとき、それは自動的に通常このフィールドを使用する必要があなたを増加します;.、IntegerFieldとを
my_id = models.AutoField(PRIMARY_KEY =真:主キーをカスタマイズ )
あなたは主キーを指定しない場合、システムが自動的に追加されますお使いのモデルに主キーフィールド。
<5> のBooleanField
、このようなフィールドで表さ偽。管理者のチェックボックスをオンにします。に真/フィールドに
<6> のTextField
テキストフィールドの大容量。
ADMIN <TEXTAREA>(テキストエリア)で表されますフィールドのデータ(複数行のエディットボックス)...
<7> EmailField
正当性チェックをEメールでCharFieldですが、MAXLENGTHパラメータを受け付けません。
<8> のDateField
日付フィールド以下の追加のオプションパラメータの合計で:.
引数記述
auto_nowオブジェクトが保存されている場合、このフィールドの値は、自動的に一般的に「最終更新」のタイムスタンプを指すために使用される現在の時刻に設定されている。
auto_now_addオブジェクトが最初に作成されたときに、このフィールドの値は自動的に現在の時刻に設定されている
通常時間を表すオブジェクトを作成します。(管理者でのみ意味を持ち...)
<9> DateTimeField型
日時フィールド。同様の追加オプションは、同じことをサポートしてDateFieldに。


以上のパラメータ
(1)NULL
Trueの場合、DjangoはデータベースにNULLのNULL値が格納されます。デフォルトはFalseです。
(1)空白
Trueの場合、このフィールドは埋めるために許可されていません。デフォルトはFalseです。
これがnullとは異なることに注意してください。ヌル純粋カテゴリデータベース、データの検証と空白領域。
フィールドがTrue =空白の場合、検証はフィールドの形式がnullであることができます。フィールドがFalse =空白の場合、フィールドは必須です。
(2)デフォルトの
フィールドのデフォルト値。これは、値または呼び出し可能オブジェクトにすることができます。あなたが呼び出すことができる場合は、新しいオブジェクトが作成されるたびにそれが呼び出されます。
(3)PRIMARY_KEY
Trueの場合、そのフィールドは、モデルの主キーです。あなたが任意のフィールドPRIMARY_KEY真=を指定しない場合、
Djangoは自動的に、プライマリキーのデフォルトの動作をオーバーライドする場合を除き、主キーIntegerFieldとフィールドがそうすることを追加しません
任意のフィールド= TrueのPRIMARY_KEYを設定するには、それ以外の場合は不要です。
(4)UNIQUE
値がTrueに設定されている場合は、テーブル全体のデータフィールドの値は一意である必要があります
(5)選択肢
イテレータオブジェクトがタプル(例えば、リストまたはタプル)で構成されている、に使用されるフィールドオプションを提供します。選択した場合、デフォルトのフォームではなく、標準のテキストボックスの選択ボックスになり、このオプションは、オプションのボックスの選択肢を選択されています。

 

最後に、我々は、テーブルを作成する必要がデータベース内にコマンドテーブルにTEMINAL pycharmで作成され、2つのコマンドがあります、つまり:
データベースの同期スクリプトコード生成
のpython manage.pyのmakemigrationsを
、makemigrationsのコマンドを実行してジャンゴを伝えるのと同等、あなたのモデルそこに変更があり、そしてあなたは、「移行」(移行)として、これらの変更を保存します。
Djangoのモデルを保存するための移行は、ディスク上に格納されているレコードファイルは、我々が読みやすく、いつでも手動で私たちを助けるためにコンパイルすることができ、コンテンツの保存である、を見てファイルを開くことができます変更されます。

そして、データベースを同期:
Pythonは移行をmanage.pyの

おすすめ

転載: www.cnblogs.com/Jokerguigui/p/11606564.html