Python3 + Django3はシンプルな人事管理システムを開発します

1. PyCharmを使用してDjangoプロジェクトを作成する

Python3 + Django3はシンプルな人事管理システムを開発します

Python3 + Django3はシンプルな人事管理システムを開発します

mysqlclientをインストールすることを忘れないでください

(1)データベース構成

プロジェクトのsettings.pyファイルでDATABASES構成項目を見つけ、その情報を次のように変更します。

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',  # 或者使用 mysql.connector.django
        'NAME': 'userinfo',
        'USER': 'root',
        'PASSWORD': '123456',
        'HOST': 'localhost',
        'PORT': '3306',
    }
}

Python3 + Django3はシンプルな人事管理システムを開発します

ここに中国語のコメントが追加されるため、HelloWorld / settings.pyファイルの先頭に#-*-coding:UTF-8-*-を追加する必要があります。

上記には、データベース名とユーザー情報が含まれています。これらは、MySQLの対応するデータベースとユーザー設定と同じです。この設定に従って、DjangoはMySQLの対応するデータベースとユーザーに接続します。

(2)言語、タイムゾーン、すべてのホストにアクセスできるように変更します

私たちは、プロジェクトのsettings.pyファイルで見つかったALLOWED_HOSTSLANGUAGE_CODETIME_ZONE次のように設定項目は、その情報が改正されます。

ALLOWED_HOSTS = ['*']

# LANGUAGE_CODE = 'en-us'
LANGUAGE_CODE = 'zh-Hans'

# TIME_ZONE = 'UTC'
TIME_ZONE = 'Asia/Shanghai'

(3)TestModel / models.pyファイルを変更します。

from django.db import models

# Create your models here
class User(models.Model):
    GENDER_CHOICES = (
        ('男','男'), ('女','女'),
    )
    name = models.CharField(max_length=20, verbose_name='姓名', unique=True)
    birthday = models.DateTimeField(max_length=10,verbose_name='生日', null=True,blank=True)
    gender = models.CharField(max_length=30, choices=GENDER_CHOICES, verbose_name='性别')
    account = models.IntegerField(default=0,verbose_name='工号')
    age = models.IntegerField(default=18, verbose_name='年龄')

上記のクラス名は、データベーステーブルの名前と継承さmodels.Modelれたを表します。クラスのフィールドは、データテーブル(名前)のフィールドを表します。データ型はCharField(equivalent varchar)、DateField(equivalent datetimeによって定義さ、max_lengthパラメータは長さを定義します。

(4)データベースを作成する

データベースに作成することを忘れないでくださいUserInfo数据库

<1>データベースはcmdコマンドラインで作成できます

G:\四期\python\UserSystem>mysql -uroot -p 
#登陆数据库

mysql> CREATE DATABASE xgp DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
#创建utf8的数据库

<2> mysqlマネージャーでデータベースを作成する

Python3 + Django3はシンプルな人事管理システムを開発します

Python3 + Django3はシンプルな人事管理システムを開発します

(5)テーブル構造を作成する

$ python manage.py migrate   # 创建表结构
//失败了可用python manage.py migrate UserInfo
//失败了可用python3 manage.py migrate UserInfo

$ python manage.py makemigrations UserInfo  # 让 Django 知道我们在我们的模型有一些变更
$ python manage.py migrate UserInfo   # 创建表结构

データベースは次のテーブルを生成します。

Python3 + Django3はシンプルな人事管理システムを開発します

(6)見学

プロジェクトを開始することを忘れないでください

Python3 + Django3はシンプルな人事管理システムを開発します

2. Django管理管理ツール

DjangoはWebベースの管理ツールを提供します。

Django自動管理ツールはdjango.contribの一部です。プロジェクトのsettings.pyのINSTALLED_APPSで確認できます:

#/HelloWorld/HelloWorld/settings.py 文件代码:
INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'UserInfo.apps.UserinfoConfig',
]

django.contribは機能の巨大なセットであり、Djangoの基本コードの不可欠な部分です。

(1)アクティベーション管理ツール

通常、プロジェクトの生成時にurls.pyに自動的に設定します。コメントを削除するだけです。

構成項目は次のとおりです。

#/HelloWorld/HelloWorld/urls.py 文件代码:
from django.contrib import admin
from django.urls import path

urlpatterns = [
    path('admin/', admin.site.urls),
]

これらすべてが設定されると、Django管理ツールを実行できます。

(2)管理ツールを使用する

開発サーバーを起動し、ブラウザーでhttp://127.0.0.1:8000/admin/にアクセスして、次のインターフェイス取得します

Python3 + Django3はシンプルな人事管理システムを開発します

今新しいプロジェクトを作成しているので、テーブル構造を作成する必要があります。

$ python manage.py migrate UserInfo   # 创建表结构,指定数据库
//失败了可用python3 manage.py migrate

$ python manage.py makemigrations UserInfo  # 让 Django 知道我们在我们的模型有一些变更
$ python manage.py migrate UserInfo   # 创建表结构

以下に示すように、コマンドpython manage.py createsuperuserを使用してスーパーユーザー作成できます。

# python manage.py createsuperuser
Username (leave blank to use 'root'): admin
Email address: [email protected]
Password:
Password (again):
Superuser created successfully.

次に、ユーザー名とパスワードを入力してログインすると、インターフェースは次のようになります。

Python3 + Django3はシンプルな人事管理システムを開発します

(3)管理インターフェイスで特定のデータモデルを管理できるようにするには、まずデータモデルを管理者に登録する必要があります。

from django.contrib import admin
from . models import User

class HostAdmin(admin.ModelAdmin):
    list_display = [
        'name', 'birthday', 'gender', 'account', 'age',
    ]
    search_fields = ('name',)
admin.site.register(User,HostAdmin)
admin.AdminSite.site_header = '运维系统管理后台'
admin.AdminSite.site_title = '运维系统'

ブラウザ訪問

Python3 + Django3はシンプルな人事管理システムを開発します

Python3 + Django3はシンプルな人事管理システムを開発します

2つの従業員情報を設定して確認する

Python3 + Django3はシンプルな人事管理システムを開発します

userinfoデータベースのuserinfo_userテーブルには、従業員情報が格納されます。

Python3 + Django3はシンプルな人事管理システムを開発します

おすすめ

転載: blog.51cto.com/14320361/2488448
おすすめ