mirror of
https://github.com/django/django.git
synced 2025-10-24 06:06:09 +00:00
Fixed #13227 -- Modified ForeignKeys to fully honor the db_prep/prep separation introduced by multidb. This was required to ensure that model instances aren't deepcopied as a result of being involved in a filter clause. Thanks to claudep for the report, and Alex Gaynor for the help on the patch.
git-svn-id: http://code.djangoproject.com/svn/django/trunk@12865 bcc190cf-cafb-0310-a4f2-bffc1f526a37
This commit is contained in:
@@ -5,6 +5,7 @@ Various complex queries that have been problematic in the past.
|
||||
import datetime
|
||||
import pickle
|
||||
import sys
|
||||
import threading
|
||||
|
||||
from django.conf import settings
|
||||
from django.db import models, DEFAULT_DB_ALIAS
|
||||
@@ -45,6 +46,13 @@ class Note(models.Model):
|
||||
def __unicode__(self):
|
||||
return self.note
|
||||
|
||||
def __init__(self, *args, **kwargs):
|
||||
super(Note, self).__init__(*args, **kwargs)
|
||||
# Regression for #13227 -- having an attribute that
|
||||
# is unpickleable doesn't stop you from cloning queries
|
||||
# that use objects of that type as an argument.
|
||||
self.lock = threading.Lock()
|
||||
|
||||
class Annotation(models.Model):
|
||||
name = models.CharField(max_length=10)
|
||||
tag = models.ForeignKey(Tag)
|
||||
|
||||
Reference in New Issue
Block a user