Thread View: pl.comp.lang.python
7 messages
7 total messages
Started by manner
Thu, 13 May 2010 17:14
[django] dziwny regexp
Author: manner
Date: Thu, 13 May 2010 17:14
Date: Thu, 13 May 2010 17:14
21 lines
1931 bytes
1931 bytes
witam,
mam zgryza z regexpem w django - chodzi o zwalidowanie dwóch pól
formularza (imię i nazwisko) w ten sposób aby dopuszczalne były
jedynie słowa pisane wielką literą. problem mam z polskimi znakami,
kiedy dam coś takiego:
class JakasKlasaForm(forms.ModelForm):
nazwisko_klienta = forms.RegexField(regex='[A-Z
\u0104\u0106\u0118\u0141\u0143\u00d3\u015a\u0179\u017b]
{1}',error_message='error')
class
Meta:
# Nazwa
modelu
model = JakasKlasa
działa OK dla nazwisk Żak, Żakowski, ale już Żok, Żokowski jest
błędne... kompletnie już nie wiem o co w tym biega. ktoś pomoże?
pozdr
Re: [django] dziwny regexp
Author: Adam Przybyla
Date: Thu, 13 May 2010 18:44
Date: Thu, 13 May 2010 18:44
22 lines
1652 bytes
1652 bytes
manner <mannerek@gmail.com> wrote:
> witam,
>
> mam zgryza z regexpem w django - chodzi o zwalidowanie dwóch pól
> formularza (imię i nazwisko) w ten sposób aby dopuszczalne były
> jedynie słowa pisane wielką literą. problem mam z polskimi znakami,
> kiedy dam coś takiego:
>
> class JakasKlasaForm(forms.ModelForm):
> nazwisko_klienta = forms.RegexField(regex='[A-Z
> \u0104\u0106\u0118\u0141\u0143\u00d3\u015a\u0179\u017b]
> {1}',error_message='error')
> class
> Meta:
> # Nazwa
> modelu
> model = JakasKlasa
>
> działa OK dla nazwisk Żak, Żakowski, ale już Żok, Żokowski jest
> błędne... kompletnie już nie wiem o co w tym biega. ktoś pomoże?
... a pokaz kilak pierwszych linijek skryptu ... Z powazaniem
Adam Przybyla
Re: dziwny regexp
Author: manner
Date: Thu, 13 May 2010 18:49
Date: Thu, 13 May 2010 18:49
8 lines
1507 bytes
1507 bytes
On May 13, 8:44 pm, Adam Przybyla <a...@rybnik.pl> wrote: > ... a pokaz kilak pierwszych linijek skryptu ... Z powazaniem mam jako pierwszą # -*- coding: utf-8 -*- pozdr
Re: dziwny regexp
Author: Adam Przybyla
Date: Sat, 15 May 2010 04:53
Date: Sat, 15 May 2010 04:53
8 lines
1232 bytes
1232 bytes
manner <mannerek@gmail.com> wrote: > On May 13, 8:44 pm, Adam Przybyla <a...@rybnik.pl> wrote: > >> ... a pokaz kilak pierwszych linijek skryptu ... Z powazaniem > mam jako pierwszą > # -*- coding: utf-8 -*- ... a r'string', u'utfek' ? Z powazaniem Adam Przybyla
Re: dziwny regexp
Author: manner
Date: Mon, 17 May 2010 09:58
Date: Mon, 17 May 2010 09:58
41 lines
2593 bytes
2593 bytes
On May 15, 6:53 am, Adam Przybyla <a...@rybnik.pl> wrote:
> >> ... a pokaz kilak pierwszych linijek skryptu ... Z powazaniem
> > mam jako pierwszą
> > # -*- coding: utf-8 -*-
> ... a r'string', u'utfek' ? Z powazaniem
nie bardzo wiem o co mnie pytasz ;)
mam tak - dane które mają być zwalidowane wysyłam POSTem z formularza
class JakasKlasaForm(forms.ModelForm):
nazwisko_klienta = forms.RegexField(regex='[A-Z
\u0104\u0106\u0118\u0141\u0143\u00d3\u015a\u0179\u017b]
{1}',error_message='error')
class Meta:
# Nazwa modelu
model = JakasKlasa
def costam(request):
if
(request.method=='POST'):
formularz =
JakasKlasaForm(request.POST)
if
formularz.is_valid():
imie_klienta=formularz.cleaned_data['imie_klienta']
nazwisko_klienta=formularz.cleaned_data['nazwisko_klienta']
uwagi=formularz.cleaned_data['uwagi']
formularz.save()
return HttpResponseRedirect('/') # Redirect after
POST
i tak jak pisałem działa np. dla Żak, Żakowski, ale już Żok, Żokowski
się nie waliduje....
a chodzi tylko o to żeby wymusić pisanie nazwisk wielką literą....
Re: dziwny regexp
Author: Łukasz Rekucki
Date: Mon, 17 May 2010 12:53
Date: Mon, 17 May 2010 12:53
59 lines
3225 bytes
3225 bytes
On 17 Maj, 11:58, manner <manne...@gmail.com> wrote:
> On May 15, 6:53 am, Adam Przybyla <a...@rybnik.pl> wrote:
>
> > >> ... a pokaz kilak pierwszych linijek skryptu ... Z powazaniem
> > > mam jako pierwszą
> > > # -*- coding: utf-8 -*-
> > ... a r'string', u'utfek' ? Z powazaniem
>
> nie bardzo wiem o co mnie pytasz ;)
>
> mam tak - dane które mają być zwalidowane wysyłam POSTem z formularza
>
> class JakasKlasaForm(forms.ModelForm):
> nazwisko_klienta = forms.RegexField(regex='[A-Z
> \u0104\u0106\u0118\u0141\u0143\u00d3\u015a\u0179\u017b]
> {1}',error_message='error')
> class Meta:
> # Nazwa modelu
> model = JakasKlasa
>
> def costam(request):
>
> if
> (request.method=='POST'):
> formularz =
> JakasKlasaForm(request.POST)
> if
> formularz.is_valid():
>
> imie_klienta=formularz.cleaned_data['imie_klienta']
>
> nazwisko_klienta=formularz.cleaned_data['nazwisko_klienta']
>
> uwagi=formularz.cleaned_data['uwagi']
>
> formularz.save()
> return HttpResponseRedirect('/') # Redirect after
> POST
>
> i tak jak pisałem działa np. dla Żak, Żakowski, ale już Żok, Żokowski
> się nie waliduje....
> a chodzi tylko o to żeby wymusić pisanie nazwisk wielką literą....
Napis '\u015a' nie oznacza tego co myślisz:
>>> '\u015a'
'\\u015a'
>>> len('\u015a')
6
Twoje pole powinno wyglądać tak:
forms.RegexField(regex=u'^[A-Z
\u0104\u0106\u0118\u0141\u0143\u00d3\u015a\u0179\u017b]')
u'', bo to ma być unicode; ^ na początku, bo chcesz żeby napis
zaczynał się od wielkiej litery, a {1} jest niepotrzebne.
PS. Żak było ok, bo jest w nim litera "a".
Re: dziwny regexp
Author: manner
Date: Mon, 17 May 2010 14:46
Date: Mon, 17 May 2010 14:46
8 lines
1539 bytes
1539 bytes
On May 17, 2:53 pm, Łukasz Rekucki <lreku...@gmail.com> wrote: > Twoje pole powinno wyglądać tak: [...] dzęki :) km.
Thread Navigation
This is a paginated view of messages in the thread with full content displayed inline.
Messages are displayed in chronological order, with the original post highlighted in green.
Use pagination controls to navigate through all messages in large threads.
Back to All Threads