<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Wojciech Jamrozy blog &#187; Django</title>
	<atom:link href="http://www.wojtekrj.net/tag/django/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.wojtekrj.net</link>
	<description>Blog about computer science, programming and linux</description>
	<lastBuildDate>Sun, 23 Oct 2011 21:57:23 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
		<item>
		<title>[Python] Django FileField problem with polish/non-english letters</title>
		<link>http://www.wojtekrj.net/2009/07/python-django-filefield-problem-with-polishnon-english-letters/</link>
		<comments>http://www.wojtekrj.net/2009/07/python-django-filefield-problem-with-polishnon-english-letters/#comments</comments>
		<pubDate>Mon, 27 Jul 2009 12:39:09 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Django]]></category>
		<category><![CDATA[Python]]></category>
		<category><![CDATA[localization]]></category>

		<guid isPermaLink="false">http://www.wojtekrj.net/?p=204</guid>
		<description><![CDATA[I&#8217;ve created a Django model using FileField: class Car&#40;models.Model&#41;: ... car = models.FileField&#40;upload_to='upl/%Y/%m/%d'&#41; ... I wanted to upload files named using polish characters (for example: &#8220;auto-żółw&#8221;). Unfortunately,  Django erease polish letters (&#8220;auto-żółw&#8221; -&#62; &#8220;auto-w&#8221;). I&#8217;ve find out that the problem is in django.utils.text.get_valid_filename function. After I&#8217;ve changed line: return re.sub&#40;r'[^-A-Za-z0-9_.]', '', s&#41; to return re.sub&#40;'(?u)[^-.\w]', [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve created a Django model using FileField:</p>

<div class="wp_syntax"><div class="code"><pre class="python" style="font-family:monospace;"><span style="color: #ff7700;font-weight:bold;">class</span> Car<span style="color: black;">&#40;</span>models.<span style="color: black;">Model</span><span style="color: black;">&#41;</span>:
    ...
    <span style="color: black;">car</span> = models.<span style="color: black;">FileField</span><span style="color: black;">&#40;</span>upload_to=<span style="color: #483d8b;">'upl/%Y/%m/%d'</span><span style="color: black;">&#41;</span>
    ...</pre></div></div>

<p>I wanted to upload files named using polish characters (for example: &#8220;auto-żółw&#8221;). Unfortunately,  Django erease polish letters (&#8220;auto-żółw&#8221; -&gt; &#8220;auto-w&#8221;).<span id="more-204"></span></p>
<p>I&#8217;ve find out that the problem is in <em>django.utils.text.get_valid_filename</em> function.<br />
After I&#8217;ve changed line:</p>

<div class="wp_syntax"><div class="code"><pre class="python" style="font-family:monospace;"><span style="color: #ff7700;font-weight:bold;">return</span> <span style="color: #dc143c;">re</span>.<span style="color: black;">sub</span><span style="color: black;">&#40;</span>r<span style="color: #483d8b;">'[^-A-Za-z0-9_.]'</span>, <span style="color: #483d8b;">''</span>, s<span style="color: black;">&#41;</span></pre></div></div>

<p>to</p>

<div class="wp_syntax"><div class="code"><pre class="python" style="font-family:monospace;"><span style="color: #ff7700;font-weight:bold;">return</span> <span style="color: #dc143c;">re</span>.<span style="color: black;">sub</span><span style="color: black;">&#40;</span><span style="color: #483d8b;">'(?u)[^-.<span style="color: #000099; font-weight: bold;">\w</span>]'</span>, <span style="color: #483d8b;">''</span>, s<span style="color: black;">&#41;</span></pre></div></div>

<p>Django accepts polish letters, too.</p>
<p><a class="a2a_button_wykop" href="http://www.addtoany.com/add_to/wykop?linkurl=http%3A%2F%2Fwww.wojtekrj.net%2F2009%2F07%2Fpython-django-filefield-problem-with-polishnon-english-letters%2F&amp;linkname=%5BPython%5D%20Django%20FileField%20problem%20with%20polish%2Fnon-english%20letters" title="Wykop" rel="nofollow" target="_blank"><img src="http://www.wojtekrj.net/wp-content/plugins/add-to-any/icons/wykop.png" width="16" height="16" alt="Wykop"/></a><a class="a2a_button_delicious" href="http://www.addtoany.com/add_to/delicious?linkurl=http%3A%2F%2Fwww.wojtekrj.net%2F2009%2F07%2Fpython-django-filefield-problem-with-polishnon-english-letters%2F&amp;linkname=%5BPython%5D%20Django%20FileField%20problem%20with%20polish%2Fnon-english%20letters" title="Delicious" rel="nofollow" target="_blank"><img src="http://www.wojtekrj.net/wp-content/plugins/add-to-any/icons/delicious.png" width="16" height="16" alt="Delicious"/></a><a class="a2a_button_facebook" href="http://www.addtoany.com/add_to/facebook?linkurl=http%3A%2F%2Fwww.wojtekrj.net%2F2009%2F07%2Fpython-django-filefield-problem-with-polishnon-english-letters%2F&amp;linkname=%5BPython%5D%20Django%20FileField%20problem%20with%20polish%2Fnon-english%20letters" title="Facebook" rel="nofollow" target="_blank"><img src="http://www.wojtekrj.net/wp-content/plugins/add-to-any/icons/facebook.png" width="16" height="16" alt="Facebook"/></a><a class="a2a_button_technorati_favorites" href="http://www.addtoany.com/add_to/technorati_favorites?linkurl=http%3A%2F%2Fwww.wojtekrj.net%2F2009%2F07%2Fpython-django-filefield-problem-with-polishnon-english-letters%2F&amp;linkname=%5BPython%5D%20Django%20FileField%20problem%20with%20polish%2Fnon-english%20letters" title="Technorati Favorites" rel="nofollow" target="_blank"><img src="http://www.wojtekrj.net/wp-content/plugins/add-to-any/icons/technorati.png" width="16" height="16" alt="Technorati Favorites"/></a><a class="a2a_button_digg" href="http://www.addtoany.com/add_to/digg?linkurl=http%3A%2F%2Fwww.wojtekrj.net%2F2009%2F07%2Fpython-django-filefield-problem-with-polishnon-english-letters%2F&amp;linkname=%5BPython%5D%20Django%20FileField%20problem%20with%20polish%2Fnon-english%20letters" title="Digg" rel="nofollow" target="_blank"><img src="http://www.wojtekrj.net/wp-content/plugins/add-to-any/icons/digg.png" width="16" height="16" alt="Digg"/></a><a class="a2a_button_google_bookmarks" href="http://www.addtoany.com/add_to/google_bookmarks?linkurl=http%3A%2F%2Fwww.wojtekrj.net%2F2009%2F07%2Fpython-django-filefield-problem-with-polishnon-english-letters%2F&amp;linkname=%5BPython%5D%20Django%20FileField%20problem%20with%20polish%2Fnon-english%20letters" title="Google Bookmarks" rel="nofollow" target="_blank"><img src="http://www.wojtekrj.net/wp-content/plugins/add-to-any/icons/google.png" width="16" height="16" alt="Google Bookmarks"/></a><a class="a2a_button_msdn" href="http://www.addtoany.com/add_to/msdn?linkurl=http%3A%2F%2Fwww.wojtekrj.net%2F2009%2F07%2Fpython-django-filefield-problem-with-polishnon-english-letters%2F&amp;linkname=%5BPython%5D%20Django%20FileField%20problem%20with%20polish%2Fnon-english%20letters" title="MSDN" rel="nofollow" target="_blank"><img src="http://www.wojtekrj.net/wp-content/plugins/add-to-any/icons/msdn.png" width="16" height="16" alt="MSDN"/></a><a class="a2a_button_twitter" href="http://www.addtoany.com/add_to/twitter?linkurl=http%3A%2F%2Fwww.wojtekrj.net%2F2009%2F07%2Fpython-django-filefield-problem-with-polishnon-english-letters%2F&amp;linkname=%5BPython%5D%20Django%20FileField%20problem%20with%20polish%2Fnon-english%20letters" title="Twitter" rel="nofollow" target="_blank"><img src="http://www.wojtekrj.net/wp-content/plugins/add-to-any/icons/twitter.png" width="16" height="16" alt="Twitter"/></a><a class="a2a_button_technotizie" href="http://www.addtoany.com/add_to/technotizie?linkurl=http%3A%2F%2Fwww.wojtekrj.net%2F2009%2F07%2Fpython-django-filefield-problem-with-polishnon-english-letters%2F&amp;linkname=%5BPython%5D%20Django%20FileField%20problem%20with%20polish%2Fnon-english%20letters" title="Technotizie" rel="nofollow" target="_blank"><img src="http://www.wojtekrj.net/wp-content/plugins/add-to-any/icons/technotizie.png" width="16" height="16" alt="Technotizie"/></a><a class="a2a_button_technet" href="http://www.addtoany.com/add_to/technet?linkurl=http%3A%2F%2Fwww.wojtekrj.net%2F2009%2F07%2Fpython-django-filefield-problem-with-polishnon-english-letters%2F&amp;linkname=%5BPython%5D%20Django%20FileField%20problem%20with%20polish%2Fnon-english%20letters" title="TechNet" rel="nofollow" target="_blank"><img src="http://www.wojtekrj.net/wp-content/plugins/add-to-any/icons/technet.png" width="16" height="16" alt="TechNet"/></a><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fwww.wojtekrj.net%2F2009%2F07%2Fpython-django-filefield-problem-with-polishnon-english-letters%2F&amp;title=%5BPython%5D%20Django%20FileField%20problem%20with%20polish%2Fnon-english%20letters" id="wpa2a_2">Share/Save</a></p>]]></content:encoded>
			<wfw:commentRss>http://www.wojtekrj.net/2009/07/python-django-filefield-problem-with-polishnon-english-letters/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

