ホームページ  >  記事  >  バックエンド開発  >  Pythonモデルの使い方

Pythonモデルの使い方

coldplay.xixi
coldplay.xixiオリジナル
2020-08-25 11:55:169409ブラウズ

Python モデルの使用法は次のとおりです: 1. モデルが追加され、コードは [book=Book(title="hello go")] です; 2. モデルは削除され、コードは [book= Book.objects.get (id=1)、book.delete()]。

Pythonモデルの使い方

[関連する学習の推奨事項: Python チュートリアル]

Python モデルの使用法は次のとおりです:

1. 最初はデータベース構成です

一般に、新しい Django プロジェクトは次のとおりです。データベースとして sqlite 用に構成されています

通常、プロジェクトでは MySQL が使用されます

最初に構成を変更します

プロジェクトの settings.py で構成を変更します

元の設定 sqlite を独自の属性に変更します

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',
        'USER':'root',
        'PASSWORD':'',
        'NAME':'djangouse',
        'HOST':'localhost',
    }
}

USER MySQL のユーザー名を入力します

PASSWORD MySQL のパスワードを入力します

NAME使用するデータベースの名前を入力します。これは MySQL で自分で作成する必要があります。

注: モデルを使用する前に、忘れずに MySQL を開いてください

2。コマンド ラインは変更されました。新しいバージョンの django のロット

以下はモデルに関する主なコマンドです

#python manage.py check モデルにスペルミスがあるかどうかを確認します

python manage.py makemigrations モデルの変更に対応する移行ファイルを生成します

python manage.py merge マイグレーションを実行します

通常はアプリとデータベースを作成した後

最初に実行します

python manage.py migrate

いくつかの管理テーブルを生成します

3. 次に、新しいモデルを作成します

最初にモデル パッケージをインポートします

追加

from django.db import models
class Book(models.Model):
    title=models.CharField(max_length=100)
    def __unicode__(self):
        return self.title

をアプリの models.py に送信します。モデルには、最大長 100

unicode のタイトル フィールドがあります。このメソッドは、オブジェクトがクエリされたときに表示されるコンテンツを返します。デフォルトの表示は Object

です。

と、順番に実行されます

python manage.py check  检查model是否有拼写错误
python manage.py makemigrations 将model的改变生成一个迁移文件
python manage.py migrate 执行迁移

その後、使用されたデータベースにクエリを実行すると、book

4 を含む名前の追加テーブルがあることがわかります。モデルの追加、削除、確認、修正

#add

book=Book(title="hello django")
book.save()

Delete

book=Book.objects.get(id=1)
book.delete()

ID 1

# のオブジェクトを取得後、delete メソッドを実行##Check

book=Book.objects.all()

すべての Book オブジェクトをクエリしてコレクションを返す

book=Book.objects.get(id=1)

ID 1 の Book オブジェクトを取得する

book=Book.objects.filter(title__icontains="hello")

タイトルに hello を含む Book オブジェクトのコレクションを取得するfield

Change

book=Book.objects.get(id=1)
book.title="django"
book.save()

5. 次のモデルの高度な使用法 - manager

manager は、model

# のいくつかの一般的なメソッドをカプセル化したものです。 ##値を取得するメソッドもあれば、オブジェクトのコレクションを取得するメソッドもあります

##取得した値を見てみる マネージャーの作成方法

##モデルから継承した新しいクラスを作成します。アプリの model.py のマネージャー

class BookManager(models.Manager):
    def get_book_count(self,keyword):
        return self.filter(title__icontains=keyword).count()

次に、マネージャーをモデルに追加します

class Book(models.Model):
    title=models.CharField(max_length=100)
    myobjects=BookManager()

Yes を使用する場合

count=Book.myobjects.get_book_count("hello")

これは、名前に book が含まれるオブジェクトの数を返します

特別な条件を持つオブジェクトのコレクションを取得したい場合はどうすればよいでしょうか?

新しいマネージャーを作成します

class PythonManager(models.Manager):
    def get_query_set(self):
        return super(PythonManager,self).get_query_set().filter(title__icontaions='hello')

マネージャーをモデルに追加します

class Book(models.Model):
    title=models.CharField(max_length=100)
    myobjects=BookManager()
    pyhton_objects=PythonManager()

使用すると、

queryset=Book.pyhton_objects.get_query_set()

これは Book オブジェクトのコレクションを返します名前に hello

6 が含まれています。次のステップは、バックグラウンド ページを使用してモデルを管理することです

まず、ターミナルに

python manage.py createsuperuser
と入力します。

以上がPythonモデルの使い方の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。