sql >> Database teknologi >  >> RDS >> Mysql

Hvordan får man Django til at fungere med ikke-understøttede MySQL-drivere såsom gevent-mysql eller Concurrence's MySQL-driver?

tre skål for @travisclines forslag om at gå med pymysql . hans forslag var baseret på dette indlæg fra mozilla . alt det kræver er en simpel patch til din manage.py-fil

#!/usr/bin/env python
+try:
+    import pymysql
+    pymysql.install_as_MySQLdb()
+except ImportError:
+    pass 

at ændre importen i din indstillingsfil og monkeypatch() da pymysql er en ren python-driver.

travis nævnte, at han tester for kompatibilitet ved at ændre importen og køre unittests for pymysql, mysqldb og myconnpy.

Bemærk, at der allerede er eksempler på finere detaljer, du skal være opmærksom på - men alt i alt er dette en elegant, vedligeholdelsesvenlig løsning. Jeg vil opdatere, når jeg får dette til at køre i produktion!



  1. Fatal fejl:Brug af $this, når den ikke er i objektkontekst i

  2. Sådan finder du ud af, om et kolonnenavn er et reserveret søgeord på tværs af forskellige databaser

  3. forsøger at få antallet af måneder

  4. Ulemper ved at citere heltal i en Mysql-forespørgsel?