I really struggling with my understanding of the following issue and how to 
resolve 


----------------------------------------


When I try and save (using the Django standard admin interface) I get the 
following error... 

    TypeError at /admin/web/campaign/dc6eb21f-87fa-462f-88af-416cf6be37f6/
>     
>     get_db_prep_value() got an unexpected keyword argument 'connection'
>

Could someone explain this to me, why and maybe a possible solution? I'm 
assuming it is something to do with my custom HibernateBooleanField field. 

Full error and details below. 

**Error**


    Environment:
>     
>     
>     Request Method: POST
>     Request URL: 
> http://127.0.0.1:8000/admin/web/campaign/dc6eb21f-87fa-462f-88af-416cf6be37f6/
>     
>     Django Version: 1.4.2
>     Python Version: 2.7.2
>     Installed Applications:
>     ('django.contrib.auth',
>      'django.contrib.contenttypes',
>      'django.contrib.sessions',
>      'django.contrib.sites',
>      'django.contrib.flatpages',
>      'django.contrib.messages',
>      'django.contrib.staticfiles',
>      'grappelli.dashboard',
>      'grappelli',
>      'django.contrib.admin',
>      'django.contrib.admindocs',
>      'web')
>     Installed Middleware:
>     ('django.middleware.common.CommonMiddleware',
>      'django.contrib.sessions.middleware.SessionMiddleware',
>      'django.middleware.csrf.CsrfViewMiddleware',
>      'django.contrib.auth.middleware.AuthenticationMiddleware',
>      'django.contrib.messages.middleware.MessageMiddleware')
>     
>     
>     Traceback:
>     File "/Library/Python/2.7/site-packages/django/core/handlers/base.py" 
> in get_response
>       111.                         response = callback(request, 
> *callback_args, **callback_kwargs)
>     File 
> "/Library/Python/2.7/site-packages/django/contrib/admin/options.py" in 
> wrapper
>       366.                 return self.admin_site.admin_view(view)(*args, 
> **kwargs)
>     File "/Library/Python/2.7/site-packages/django/utils/decorators.py" in 
> _wrapped_view
>       91.                     response = view_func(request, *args, 
> **kwargs)
>     File 
> "/Library/Python/2.7/site-packages/django/views/decorators/cache.py" in 
> _wrapped_view_func
>       89.         response = view_func(request, *args, **kwargs)
>     File "/Library/Python/2.7/site-packages/django/contrib/admin/sites.py" 
> in inner
>       196.             return view(request, *args, **kwargs)
>     File "/Library/Python/2.7/site-packages/django/utils/decorators.py" in 
> _wrapper
>       25.             return bound_func(*args, **kwargs)
>     File "/Library/Python/2.7/site-packages/django/utils/decorators.py" in 
> _wrapped_view
>       91.                     response = view_func(request, *args, 
> **kwargs)
>     File "/Library/Python/2.7/site-packages/django/utils/decorators.py" in 
> bound_func
>       21.                 return func(self, *args2, **kwargs2)
>     File "/Library/Python/2.7/site-packages/django/db/transaction.py" in 
> inner
>       209.                 return func(*args, **kwargs)
>     File 
> "/Library/Python/2.7/site-packages/django/contrib/admin/options.py" in 
> change_view
>       1054.                 self.save_model(request, new_object, form, 
> True)
>     File 
> "/Library/Python/2.7/site-packages/django/contrib/admin/options.py" in 
> save_model
>       709.         obj.save()
>     File "/Library/Python/2.7/site-packages/django/db/models/base.py" in 
> save
>       463.         self.save_base(using=using, force_insert=force_insert, 
> force_update=force_update)
>     File "/Library/Python/2.7/site-packages/django/db/models/base.py" in 
> save_base
>       529.                             rows = 
> manager.using(using).filter(pk=pk_val)._update(values)
>     File "/Library/Python/2.7/site-packages/django/db/models/query.py" in 
> _update
>       560.         return query.get_compiler(self.db).execute_sql(None)
>     File 
> "/Library/Python/2.7/site-packages/django/db/models/sql/compiler.py" in 
> execute_sql
>       986.         cursor = super(SQLUpdateCompiler, 
> self).execute_sql(result_type)
>     File 
> "/Library/Python/2.7/site-packages/django/db/models/sql/compiler.py" in 
> execute_sql
>       808.             sql, params = self.as_sql()
>     File 
> "/Library/Python/2.7/site-packages/django/db/models/sql/compiler.py" in 
> as_sql
>       951.                 val = field.get_db_prep_save(val, 
> connection=self.connection)
>     File 
> "/Library/Python/2.7/site-packages/django/db/models/fields/__init__.py" in 
> get_db_prep_save
>       292.                                       prepared=False)
>     
>     Exception Type: TypeError at 
> /admin/web/campaign/dc6eb21f-87fa-462f-88af-416cf6be37f6/
>     Exception Value: get_db_prep_value() got an unexpected keyword 
> argument 'connection'
>
>
>
> **model**
>
>     class Campaign(models.Model):
>         campaignid = models.CharField(max_length=255, primary_key=True, 
> db_column='campaignID')
>         name = models.CharField(max_length=105)
>         active = HibernateBooleanField(default=False)
>         created = models.DateTimeField()
>         modified = models.DateTimeField(null=True, blank=True)
>         companyid = models.ForeignKey(Company, null=True, 
> db_column='companyID', blank=True)
>     
>         class Meta:
>             db_table = u'campaign'
>     
>     
>         def __unicode__(self):
>             return self.name
>     
>     class HibernateBooleanField(models.BooleanField):
>     
>         __metaclass__ = models.SubfieldBase
>     
>         def get_internal_type(self):
>             return "HibernateBooleanField"
>     
>         def db_type(self):
>             return 'bit(1)'
>     
>         def to_python(self, value):
>             if value in (True, False): return value
>             if value in ('t', 'True', '1', '\x01'): return True
>             if value in ('f', 'False', '0', '\x00'): return False
>     
>         def get_db_prep_value(self, value):
>             return 0x01 if value else 0x00
>

-- 
You received this message because you are subscribed to the Google Groups 
"Django users" group.
To view this discussion on the web visit 
https://groups.google.com/d/msg/django-users/-/DGPWdVBIwu4J.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/django-users?hl=en.

Reply via email to