Django+mysql の設定と簡単な操作データベースのサンプルコード

Django+mysql の設定と簡単な操作データベースのサンプルコード

ステップ1: MySQLドライバをダウンロードする

cmdは作成されたDjangoプロジェクトディレクトリに入ります。次のコマンドを使用します。

pip で mysqlclient をインストールします

インストールが成功するまでお待ちください。

ステップ 2: settings.py で MySQL 接続パラメータを設定します (MySQL がない場合は、まず MySQL をインストールします)

データベース = {
  'デフォルト': {
    'エンジン': 'django.db.backends.mysql',
    'NAME': 'データベース名(最初にMySQLでデータベースを作成する必要があります)',
    'USER':'mysql ユーザー名 (root など)',
    'PASSWORD': 'パスワード(123456789など)',
    'HOST':'ドメイン名 (127.0.0.1 または localhost)',
    'PORT':'ポート番号 (3306)',
  }
}

ステップ3: models.pyでモデルクラスを作成する

django.dbからモデルをインポートする
# ここでモデルを作成します。MVCアーキテクチャのモデルと同様です
クラス Article(models.Model):
  タイトル = models.CharField(最大長=60、デフォルト='タイトル')
  コンテンツ = models.TextField(null=True)

ステップ4: モデルクラスに基づいてデータベーステーブルを作成する

1. cmdを使用してDjangoプロジェクトのパスを入力します。

2. Python manage.py migrate #Django に必要なテーブル構造、非モデルクラスのその他のテーブルを作成する

3. python manage.py makemigrations app name #データ移行の準備

例えば: python manage.py makemigrations myblog myblogは私のプロジェクト内のアプリの名前です

4. python manage.py migrate # 移行を実行し、モデルテーブル構造を作成する

ステップ5: コードを書き始める

まず、コード内でMySQLにレコードを挿入し、それをページに表示するという要件について話しましょう。

1. テンプレートの下に新しいテンプレートを作成します。これは実際にはindex.htmlなどのページです。

<!DOCTYPE html>
<html lang="ja">
<ヘッド>
  <メタ文字セット="UTF-8">
  <title>タイトル</title>
</head>
<本文>
<h2> {{記事のタイトル}}}</h2>
コンテンツ: {{ article.content }}
</本文>
</html>

ページにデータを表示するには {{ }} を使用します。ここを見れば理解できるでしょう。

2. URLを設定する

1. プロジェクトの urls.py で URL マッピングを構成します (プロジェクトの urls.py であることに注意してください)。

django.conf.urlsからurlをインポートし、includeします
django.contribからadminをインポート
#ルートURL設定 urlpatterns = [
  #url(ページ正規表現、レスポンスメソッド名)
  url(r'^admin/', admin.site.urls),
  url(r'^myblog/',include('myblog.urls')),
]

次に設定する予定のセカンダリURLであるinclude('myblog.urls')がappの下のurls.pyに設定されていることに注意してください。

django.conf.urlsからurlをインポートする
django.contribからadminをインポート
から。インポートビュー
urlパターン = [
  #url(ページ正規表現、応答メソッド名) ^index$: ページがインデックスで始まり、インデックスで終わることを示します。正規表現制約 url(r'^index/$',views.index)、
]

これで、「localhost:8000/myblog/index/」のアクセス パスが設定されました。url(r'^index/$',views.index) は、パス /myblog/index/ が views.py の index メソッドによって応答されることを意味します。

3. レスポンス関数を書く: データにデータを挿入してページに表示するなど

django.shortcutsからレンダリングをインポートする
django.http から HttpResponse をインポートします
myblog.models から記事をインポート
# ここでビューを作成します。
defインデックス(リクエスト):
  article = 記事(title='タイトル', content='コンテンツ!')
  記事.save()
  レンダリングを返します(request,'index.html',{'article':article}

ステップ6: プロジェクトを実行する

ここでは pycharm を使用します。実行ボタンをクリックするだけです。pycharm がない場合は、以下を使用できます。

python manage.py 実行サーバー

サーバーを起動し、ブラウザに http://localhost:8000/myblog/index/ と入力すれば完了です。

上記は、編集者が紹介したDjango + MySQL構成と簡単なデータベース操作のサンプルコードです。皆様のお役に立てれば幸いです。ご質問がある場合は、メッセージを残してください。編集者がすぐに返信します。また、123WORDPRESS.COM ウェブサイトをサポートしてくださっている皆様にも感謝申し上げます。

以下もご興味があるかもしれません:
  • Django が MySQL データベースに接続し、テーブル操作を作成する詳細な説明
  • Django 2.2 を MySQL データベースに接続する方法
  • DjangoでMySQLデータベースを構成するための完全な手順
  • Pycharm を使用して Django で MySQL データベースに接続する方法の詳細な説明
  • DjangoはMysqlデータベースの既存のデータテーブル方式を使用します
  • Django1.7+python 2.78+pycharm 構成 mysql データベース チュートリアル
  • Django フレームワーク構成 MySQL データベース実装プロセス

<<:  ReactのEffectListの簡単な分析

>>:  リクエスト数を制限するために Ajax 同時リクエストを実装するために js を使用するサンプル コード

推薦する

HTML の順序なしリストタグと順序付きリストタグの使用例

1. 上部と下部のリストタグ: <dl>..</dl>:上dt下層dd: カ...

divの背景を透明に設定する方法の例

div の背景を透明にする一般的な方法は 2 つあります。 1. 不透明度属性を 0 ~ 1 の値に...

HTMLページの読み込みと解析プロセスの詳細な紹介

ブラウザがHTMLを読み込みレンダリングする順序1. IE は上から下へダウンロードし、上から下へレ...

React Nativeでaxiosを使用してネットワークリクエストを行う方法

フロントエンド開発では、Ajax、jQuery ajax、axios、fetch など、データ要求を...

mysql ワイルドカード (sql 高度なフィルタリング)

目次まず、値の一部と一致させるために使用される特殊文字であるワイルドカードについて簡単に紹介します。...

mysql8.0.19 winx64バージョンのインストール問題を解決する

MySQL は、スウェーデンの会社 MySQL AB によって開発されたオープンソースの小規模なリレ...

Vue カスタム オプション時間カレンダー コンポーネント

この記事の例では、参考のためにvueカスタムオプションタイムカレンダーコンポーネントの具体的なコード...

Javascript フロントエンド最適化コード

目次if判定の最適化1. 最も簡単な方法:判断2. より良い方法: スイッチ3. より良いアプローチ...

JS配列ループ方式と効率分析の比較

配列メソッドJavaScript には多くの配列メソッドが用意されています。次の図は、ほとんどの配列...

テーブル切り替えのための JavaScript プラグインのカプセル化

この記事では、テーブル切り替えプラグインを実装するためのJavaScriptのカプセル化コードを参考...

Vue はシームレスなカルーセル効果を実現

この記事では、シームレスなカルーセル効果を実現するためのVueの具体的なコードを参考までに紹介します...

1つのSQL文でMySQLの重複排除が完了し、1つが保持されます。

数日前、ある要件に取り組んでいたとき、MySQL で重複レコードをクリーンアップする必要がありました...

v-html レンダリング コンポーネントの問題

以前 HTML を解析したことがあるので、今日は Vue ドラッグ アンド ドロップを使用して、Ku...

Vscode が Ubuntu にリモート接続する際のエラー問題の解決方法

1. 事件の背景:仕事上、Ubuntu への vscode リモート接続を使用する必要があります。 ...

Linux コマンドラインで電卓を使用する 5 つのコマンド

みなさんこんにちは。私は梁旭です。 Linux を使用するときに、計算を行う必要がある場合があり、そ...