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 -~----------~----~----~----~------~----~------~--~---