Mysql
 sql >> база данни >  >> RDS >> Mysql

Как да стартирам тестовата база данни на Django само в паметта?

Ако зададете вашата база данни на sqlite3, когато стартирате тестовете си, Django ще използва база данни в паметта .

Използвам код като този в моя settings.py за да настроите двигателя на sqlite, когато изпълнявам моите тестове:

if 'test' in sys.argv:
    DATABASE_ENGINE = 'sqlite3'

Или в Django 1.2:

if 'test' in sys.argv:
    DATABASES['default'] = {'ENGINE': 'sqlite3'}

И накрая в Django 1.3 и 1.4:

if 'test' in sys.argv:
    DATABASES['default'] = {'ENGINE': 'django.db.backends.sqlite3'}

(Пълният път към бекенда не е строго необходим с Django 1.3, но прави настройката съвместима напред.)

Можете също да добавите следния ред, в случай че имате проблеми с южните миграции:

    SOUTH_TESTS_MIGRATE = False


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. MYSQLI::prepare() , грешка при използване на заместител :something

  2. Mysql, PHP, търсене на няколко думи

  3. JDBC срещу уеб услуга за Android

  4. Въпрос на изявление на MYSQL if

  5. mysql вмъкване на състезателно състояние