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

Django не може да зареди тестови приспособления, IntegrityError

Изглежда, че django dumpdata изхвърли приспособления в грешен ред. Погледнете в json файла, за да проверите дали product с id: 1 присъства там. Ако, както предполагам, това е вярно, използвайте някои по-сложни инструменти за изхвърляне на данни, например django-fixture-magic

Като алтернатива може да искате да изтриете всички ограничения за интегритет с помощта на db машина точно преди качване и да опитате да ги създадете отново веднага след това, но това е донякъде рисковано, ако има някои грешки в интегритета.

За PostgreSQL се консултирайте с тази тема за да знаете как да получите дефиниции на вашите таблици. В MySQL това би било нещо като следното:

$ mysqldump --no-data -utest django auth_user_user_permissions
CREATE TABLE `auth_user_user_permissions` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `user_id` int(11) NOT NULL,
  `permission_id` int(11) NOT NULL,
  PRIMARY KEY (`id`),
  UNIQUE KEY `user_id` (`user_id`,`permission_id`),
  KEY `auth_user_user_permissions_403f60f` (`user_id`),
  KEY `auth_user_user_permissions_1e014c8f` (`permission_id`),
  CONSTRAINT `user_id_refs_id_dfbab7d` FOREIGN KEY (`user_id`) REFERENCES `auth_user` (`id`),
  CONSTRAINT `permission_id_refs_id_67e79cb` FOREIGN KEY (`permission_id`) REFERENCES `auth_permission` (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

Следната част трябва да работи за oracle, postgre и mysql

> alter table `auth_user_user_permissions` drop foreign key `user_id_refs_id_dfbab7d`;
Query OK, 0 rows affected (0.97 sec)
Records: 0  Duplicates: 0  Warnings: 0

> alter table `auth_user_user_permissions` add CONSTRAINT `user_id_refs_id_dfbab7d` FOREIGN KEY (`user_id`) references `auth_user` (`id`);
Query OK, 0 rows affected (0.95 sec)
Records: 0  Duplicates: 0  Warnings: 0



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. как правилно да посочите схема на база данни при пролетно зареждане?

  2. Postgres bytea грешка при свързване на null към подготвени изрази

  3. Присъединете се към заявка за броене на generate_series() и извлечете нулеви стойности като '0'

  4. Как да покажа дядо родител в sql йерархията?

  5. Не правете нищо в процедура за задействане