Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- """I have several tables as below, which was created according to a `third-party system`, application also runs under the database of this system(oracle).
- Constraint failed in `Table `A, but it works in `Table B`, supposed I want to display e.name in `Table B` with code of `b.c.d.e.name`, the fronted page displayed exact data, and fronted page displayed `None` in `Table A` with code of `a.b.c.d.e.name`,
- """
- class A(models.Model):
- a_id = models.IntegerField(primary_key=True)
- b = models.OneToOneField('B', models.DO_NOTHING, related_name='+')
- class B(models.Model):
- b_id = models.IntegerField(primary_key=True)
- c = models.OneToOneField('C', models.DO_NOTHING, related_name='+')
- class C(models.Model):
- c_id = models.IntegerField(primary_key=True)
- d = models.OneToOneField('D', models.DO_NOTHING, related_name='+')
- class D(models.Model):
- d_id = models.IntegerField(primary_key=True)
- e = models.OneToOneField('E', models.DO_NOTHING, related_name='+')
- class E(models.Model):
- e_id = models.IntegerField(primary_key=True)
- name = models.CharField(max_length=64)
- # Results of pdb as below:
- (Pdb) B.objects.using('third_party_db').get(c__d__e__name="Dog")
- *** general.models.B.MultipleObjectsReturned: get() returned more than one B -- it returned 1673!
- (Pdb) A.objects.using('third_party_db').get(b__c__d__e__name="Dog")
- *** general.models.A.DoesNotExist: A matching query does not exist.
- (Pdb) A.objects.using('third_party_db').get(b__c__pk=1)
- *** general.models.A.DoesNotExist: A matching query does not exist.
- (Pdb) A.objects.using('third_party_db').get(b__f__pk=1)
- *** general.models.A.MultipleObjectsReturned: get() returned more than one A -- it returned 18!
Advertisement
Add Comment
Please, Sign In to add comment