﻿id	summary	reporter	owner	description	type	status	component	version	severity	resolution	keywords	cc	stage	has_patch	needs_docs	needs_tests	needs_better_patch	easy	ui_ux
8026	get_or_create fails on related queryset	Phoenixfire159@…	nobody	"The following will fail with a cryptic error message,

{{{
class Counter(models.Model):
  name = CharField(max_length = 255)

class Point(models.Model):
  counter = ForeignKey(Counter)

counter = Counter.objects.get(name = 'some name')
points  = counter.points.all()
points.get_or_create(**some_parameters)
}}}

For some reason, get_or_create ends up executing a SQL INSERT statement

{{{
  INSERT INTO 'point_table' ('counter_id') VALUES (None)
}}}

Well, that's not the exact output, which I unfortunately can't really copy and paste here, but the point is that get_or_create ends up inserting a Point with a '''None''' value for counter_id.

The quick fix right now is,

{{{
  counter = Counter.objects.get(name = 'some name')
  points  = counter.points.all()

  some_parameters.update({ 'defaults': { 'counter': counter } })
  points.get_or_create(**some_parameters)
}}}"		closed	Database layer (models, ORM)	dev		invalid			Unreviewed	0	0	0	0	0	0
