syncdb has probably already created your content types.

I strongly suggest that you use the option --exclude contenttypes (and any
other app that is likely to create its own data during sync/migration).

On Tue, Apr 10, 2012 at 17:59, Roy Smith <r...@panix.com> wrote:

> I've got an old site running Django 1.1 with a postgress backend.  I'm
> moving it to Django 1.3, with MySQL.  I dumped all the old data with:
>
> $ python manage.py dumpdata --indent 2 > materia-dump.2012-04-06.json
>
> I created a brand new MySQL database and ran syncdb, then tried to import
> the data with
>
> $ python manage.py loaddata materia-dump.2012-04-06.json
>
> But I get complaints about duplicate keys:
>
> > Problem installing fixture '/home/roy/materia-dump.2012-04-06.json':
> Traceback (most recent call last):
> >   File
> "/usr/lib/pymodules/python2.6/django/core/management/commands/loaddata.py",
> line 174, in handle
> >     obj.save(using=using)
> >   File "/usr/lib/pymodules/python2.6/django/core/serializers/base.py",
> line 165, in save
> >     models.Model.save_base(self.object, using=using, raw=True)
> >   File "/usr/lib/pymodules/python2.6/django/db/models/base.py", line
> 526, in save_base
> >     rows = manager.using(using).filter(pk=pk_val)._update(values)
> >   File "/usr/lib/pymodules/python2.6/django/db/models/query.py", line
> 491, in _update
> >     return query.get_compiler(self.db).execute_sql(None)
> >   File "/usr/lib/pymodules/python2.6/django/db/models/sql/compiler.py",
> line 869, in execute_sql
> >     cursor = super(SQLUpdateCompiler, self).execute_sql(result_type)
> >   File "/usr/lib/pymodules/python2.6/django/db/models/sql/compiler.py",
> line 735, in execute_sql
> >     cursor.execute(sql, params)
> >   File "/usr/lib/pymodules/python2.6/django/db/backends/util.py", line
> 34, in execute
> >     return self.cursor.execute(sql, params)
> >   File "/usr/lib/pymodules/python2.6/django/db/backends/mysql/base.py",
> line 86, in execute
> >     return self.cursor.execute(query, args)
> >   File "/usr/lib/pymodules/python2.6/MySQLdb/cursors.py", line 166, in
> execute
> >     self.errorhandler(self, exc, value)
> >   File "/usr/lib/pymodules/python2.6/MySQLdb/connections.py", line 35,
> in defaulterrorhandler
> >     raise errorclass, errorvalue
> > IntegrityError: (1062, "Duplicate entry 'photologue-gallery' for key
> 'app_label'")
>
>
> Looking at the json output, I don't see any duplicates.  I've got:
>
>  {
>    "pk": 9,
>    "model": "contenttypes.contenttype",
>    "fields": {
>      "model": "gallery",
>      "name": "gallery",
>      "app_label": "photologue"
>    }
>  },
>
> but that's the only entry for name = "gallery", app_label = "photologue".
>  Any idea what I'm doing wrong?
>
>
> ---
> Roy Smith
> r...@panix.com
>
>
>
> --
> You received this message because you are subscribed to the Google Groups
> "Django users" group.
> To post to this group, send email to django-users@googlegroups.com.
> To unsubscribe from this group, send email to
> django-users+unsubscr...@googlegroups.com.
> For more options, visit this group at
> http://groups.google.com/group/django-users?hl=en.
>
>


-- 
Marcin Tustin
Tel: 07773 787 105

-- 
You received this message because you are subscribed to the Google Groups 
"Django users" group.
To post to this group, send email to django-users@googlegroups.com.
To unsubscribe from this group, send email to 
django-users+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/django-users?hl=en.

Reply via email to