J'ai une base de données héritée d'Oracle qui a des champs. Si je cours Orders.objects.count() j'obtiens le montant correct. Quand je cours Orders.object.all() j'obtiens cette erreur mais n'ai pas trouvé une solution en ligne.Shell Django ORA-00904
class Orders(models.Model):
account_obj_db = models.BigIntegerField(blank=True, null=True)
account_obj_id0 = models.BigIntegerField(blank=True, null=True)
account_obj_type = models.CharField(max_length=1020, blank=True, null=True)
account_obj_rev = models.BigIntegerField(blank=True, null=True)
order_payload_buf_size = models.BigIntegerField(blank=True, null=True)
total_entitlement_count = models.BigIntegerField(blank=True, null=True)
currency_code = models.BigIntegerField(blank=True, null=True)
>>> from home.models import Orders
>>> Orders.objects.all()
retraçage (appel le plus récent en dernier):
fichier "paquets /home/user/dev2/lib/python3.5/site-/django/db/backend/utils.py", ligne 64, à exécuter
return self.cursor.execute (sql, params)
Fichier "/home/user/dev2/lib/python3.5/site-packages/django/db/standends/oracle/base.py", ligne 481, dans exécuter
self.cursor.execute de retour (requête, self._param_generator (params))
cx_Oracle.DatabaseError: ORA-00904: "COMMANDES" "ID":. identifiant invalide
S'il vous plaît ajouter quelques lignes d'échantillons – e4c5
Les sons comme les modèles et la table de base de données ne sont pas identiques, vous pouvez migrer pour vous assurer qu'ils sont faire correspondre ou modifier les modèles comme la table dans votre base de données – Mojimi
Depuis ma table n'a pas de clé primaire, je crois que Django crée le champ ID. Dans la documentation, je ne vois pas un moyen de contourner les autofields. Une idée? @Mojimi –