39

私は git repo から Django dev(1.6.x) を使用しており、MySQL を使用したいのsettings.pyですが、Python3 と Django では MySQL がサポートされていないため、ファイルに MySQL をセットアップできません。 Djangoでもそれをセットアップできませsettings.pyん。

python3 を使用して django で mysql(または pymysql または ?) を使用できますか?

4

4 に答える 4

7

私は長い間、django と python 3.x での mysql のサポートを待っていましたが、ついにこれを可能にする公式の互換エンジンが登場しました。

http://dev.mysql.com/doc/connector-python/en/connector-python-django-backend.html

Python 3 を使用して virtualenv を作成し、上記のリンクでデータベース固有の設定を使用できました。

DATABASES = {
    'default': {
        'NAME': 'mydatabase',
        'ENGINE': 'mysql.connector.django',
        'USER': 'mydbuser',
        'PASSWORD': 'mydbpassword',
        'OPTIONS': {
          'autocommit': True,
        },
    }
}

Django Poll Tutorial からモデルを切り取って貼り付け、「python manage syncdb」が機能しました。

ORM 全体がこのコネクタをサポートしているかどうかを確認するための追加のテスト。

ここに私の完全な記事があります: http://bunwich.blogspot.ca/2014/02/finally-mysql-connector-that-works-with.html

于 2014-02-12T22:00:15.810 に答える
7

Python 3 用の pymysql は Django DB バックエンドではありませんが、 Django Python 3 MySQL バックエンドの変更で、MySQL バックエンドを Python 3 と互換性を持つように移植する作業が行われたという証拠があります。

他のページでは、Django 1.5 で指定された MySQL バックエンドが Python 3 で動作することが示されています: Django MySQL Works on Python 3.2.2

ただし、Python 2.x で利用可能なデフォルトの MySQL ラッパー (mysql-python) は Python 3 をサポートしていません。MySQL Python 3のパッケージは互換性があると思われます。試してみてください。

また、Python 3.2 または 3.3 以降で Django を実行していることを確認してください。Python 3.0 はサポートされていません。

これらのチェック後もまだ機能しない場合は、何か問題があった場合に備えて、データベースの設定を投稿してください。

また、DjangoリポジトリでDjango 1.5以上のものは見つかりません.1.6.xでよろしいですか?

于 2012-11-10T16:56:08.427 に答える