Django2.* + Mysql5.7 開発環境統合チュートリアル図

Django2.* + Mysql5.7 開発環境統合チュートリアル図

環境:

10.12 の新機能

Python 3.6

MySQL 5.7.25 の場合

ジャンゴ 2.2.3

前提条件: Python、Django、MySQLが正常にインストールされており、個別に実行できること

1. 設定でのデータベース構成

データベース = {
  'デフォルト': {
    'エンジン': 'django.db.backends.mysql',
    "USER": "ユーザー名",
    "PASSWORD": "あなたのパスワード",
    "NAME": "DB名"
  }
}

2. デフォルトのデータベースドライバを変更する

1. pymysqlをインストールする

pip3 install pymysql

2. ドライバーを交換する

プロジェクトのメイン パッケージを見つけます。たとえば、プロジェクトの名前が TEST の場合、TEST パッケージの下にある __init__.py ファイルを見つけます。

次のコードを追加します。

pymysql をインポートしますpymysql.install_as_MySQLdb()

3. 問題解決:

質問1: mysqlclientのバージョンの問題

「」
django.core.exceptions.ImproperlyConfigured: mysqlclient 1.3.13 以降が必要です。現在 0.9.3 を使用しています。
「」

解決策: 図のパスに従って、対応する行 35 と 36 を見つけてコメント アウトします。

質問2: 文字列のエンコードとデコードの問題

「」
AttributeError: 'str' オブジェクトに属性 'decode' がありません
「」

解決策: 例外追跡情報をクリックし、operations.py の 146 行目を見つけて、decode を encode に変更します。

試運転:

PS: ソースコードを修正した理由は、おそらく Django 2、Python 3、PyMySQL 間の互換性の問題です。また、2.* を選択した理由は、公式サポート期間のためです。

Django のデフォルトのデータベース ドライバーは mysqlclient ですが、テスト中にまったく実行できず、さまざまな mysql ライブラリのインポートに失敗することが判明しました。 .......

要約する

上記は、編集者が紹介した Django2.* + Mysql5.7 開発環境統合の図解チュートリアルです。皆様のお役に立てれば幸いです。ご質問がある場合は、メッセージを残してください。編集者がすぐに返信します。また、123WORDPRESS.COM ウェブサイトをサポートしてくださっている皆様にも感謝申し上げます。
この記事が役に立ったと思われた方は、ぜひ転載していただき、出典を明記してください。ありがとうございます!

以下もご興味があるかもしれません:
  • Django から MySQL への接続設定方法の概要 (推奨)
  • DjangoはMysqlデータベースの既存のデータテーブル方式を使用します
  • DjangoはMysqlデータを読み取り、フロントエンドに表示します
  • MySQL を再インストールした後に Django が再起動し、エラーが報告される: 「MySQLdb」という名前のモジュールがない問題を解決する方法
  • Django+mysql の設定と簡単な操作データベースのサンプルコード
  • Linux に Python3 と Django をインストールし、MySQL をデフォルトの Django サーバーとして設定する方法
  • Linux システムに Apache+Python+Django+MySQL 環境をデプロイする
  • Django1.7+python 2.78+pycharm 構成 mysql データベース チュートリアル
  • Python DjangoはMySQLデータベースに接続して追加、削除、変更、クエリを実行します

<<:  React Nativeのカスタムルーティング管理に関する深い理解

>>:  Linux seqコマンドの使い方の詳しい説明

推薦する

RR および RC 分離レベルでのインデックスとロックのテスト スクリプトのサンプル コード

基本概念現在の読み取りとスナップショットの読み取りMVCC では、読み取り操作はスナップショット読み...

Redo ログと Undo ログに基づく MySQL クラッシュ回復の分析

目次MySQLクラッシュ回復プロセス1. ブラックボックス下のデータフローを更新する2. やり直しロ...

jsはシンプルなカウントダウンを実装します

この記事の例では、参考までに簡単なカウントダウンを実装するためのjsの具体的なコードを共有しています...

Dockerボリュームマウントの実装方法

最も単純な hello world 出力イメージを作成することは最も簡単なスタートですが、実行中のコ...

Python Flask WeChat アプレットのログインプロセスとログイン API 実装コード

1. まずは効果を見てみましょうインターフェース要求によって返されるデータ: 2. 公式ログインフロ...

HTML における li タグの水平配置の例

ほとんどのナビゲーション バーは、下の図に示すように水平に配置されていますが、これはどのように実現さ...

HTML でフォーム コントロールを無効にする 2 つの方法: readonly と disabled

Web ページを作成する過程では、フォームがよく使用されます。しかし、フォーム上のコントロールを変更...

Dockerfile を使用して Docker でイメージを構築する方法

イメージを構築するこれまで、テストやデモンストレーションにさまざまなイメージを使用しました。多くの場...

HTMLページのネイティブVIDEOタグはダウンロードボタン機能を隠します

Web プロジェクトを作成しているときに、紹介ビデオが別にある紹介ページに遭遇しました。この短いビデ...

Linux でネットワーク パケット損失と遅延をシミュレートする方法

netem と tc: netem は、Linux カーネル バージョン 2.6 以降で提供されるネ...

mysql の認証、起動、およびサービスの起動のための一般的なコマンド

1. 4つの起動方法: 1.mysqld MySQL サーバーを起動します: ./mysqld --...

ブラウザでTIF形式の画像を表示する方法

ブラウザはTIF形式の画像を表示しますコードをコピーコードは次のとおりです。 <html>...

MySQL でタイムスタンプを日付に変換する例

序文職場で次のような状況に遭遇しました。ログ システムのテーブルでは、時間フィールドには日付データで...

MySQL の group by と having の詳細な説明

GROUP BY 構文を使用すると、指定されたデータ列の各メンバーに従ってクエリ結果をグループ化して...

MySQLの使用中に発生した問題

ここでは、MySQL の使用中に発生するいくつかの問題とその解決策を示します。 sql_mode=o...