To add, something just popped into my head. Have you got
DEFAULT_CHARSET = 'utf-8' in your settings.py file.



On Jul 29, 2:51 pm, cootetom <coote...@gmail.com> wrote:
> I would imagine that the deserialize function tries to encode the
> input down to ascii. My suggestion would be to find the XML serializer
> code and see what it is doing with the input string you pass to it.
>
> On Jul 29, 2:23 pm, l5x <mail.loo...@gmail.com> wrote:
>
> > Hello,
>
> > first of all, congratulations!
>
> > I have a problem. When trying to open template I get following error:
>
> > Original Traceback (most recent call last):
> >   File "/usr/lib/python2.5/site-packages/django/template/debug.py",
> > line 71, in render_node
> >     result = node.render(context)
> >   File "/usr/lib/python2.5/site-packages/django/template/
> > defaulttags.py", line 206, in render
> >     val1 = self.var1.resolve(context, True)
> >   File "/usr/lib/python2.5/site-packages/django/template/__init__.py",
> > line 546, in resolve
> >     obj = self.var.resolve(context)
> >   File "/usr/lib/python2.5/site-packages/django/template/__init__.py",
> > line 687, in resolve
> >     value = self._resolve_lookup(context)
> >   File "/usr/lib/python2.5/site-packages/django/template/__init__.py",
> > line 722, in _resolve_lookup
> >     current = current()
> >   File "/home/user/django_projects/bis/bis/../bis/Log/models.py", line
> > 124, in deserialized_object
> >     for obj in serializers.deserialize("xml", self.data):
> >   File "/usr/lib/python2.5/site-packages/django/core/serializers/
> > xml_serializer.py", line 128, in next
> >     for event, node in self.event_stream:
> >   File "/usr/lib/python2.5/xml/dom/pulldom.py", line 232, in next
> >     rc = self.getEvent()
> >   File "/usr/lib/python2.5/xml/dom/pulldom.py", line 265, in getEvent
> >     self.parser.feed(buf)
> >   File "/usr/lib/python2.5/xml/sax/expatreader.py", line 207, in feed
> >     self._parser.Parse(data, isFinal)
> > UnicodeEncodeError: 'ascii' codec can't encode character u'\u0142' in
> > position 154: ordinal not in range(128)
>
> > I use latest SVN version (1.1) revision 11367. I have # -*- coding:
> > utf-8 -*-  line at the beginning of the file, and __unicode__ method
> > is set on the model, which I serialize and on Log model as well.
>
> > My serialization:
>
> >     [ some model ... ]
>
> > def save(self, force_insert=False, force_update=False):
> >         super(Record,self).save(force_insert, force_update)
> >         data_xml = serializers.serialize("xml", Record.objects.filter
> > (id=self.id))
> >         Log.objects.create(user=user, action="zapis", type="Record",
> >               object=self.id, data=data_xml)
>
> > Deserialization:
>
> >     [ my model: Log ... ]
>
> >     def deserialized_object(self):
> >         for obj in serializers.deserialize("xml", self.data):
> >             return obj.object   [1]
>
> > [1] There is only one object so I use return on the first try.
>
> > My template:
>
> > {% ifnotequal log.deserialized_object.value
> > log.previous.deserialized_object.value %}
> >     something
> >  {% endifnotequal %}
>
> > It doesn't matter how do I put data to database: manually using create
> > () or via form.save(), and it is in UTF-8. In addition I don't have
> > any problems with database and unicode in other parts of my project,
> > only during this deserialization.
>
> > I tried to pass data to deserializer after using force_unicode, but
> > the result is the same.
>
> > I would appreciate any help.
>
> > Best regards,
> > Luke
--~--~---------~--~----~------------~-------~--~----~
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